有些时候,我们需要对几十条文章数据批量添加Tags,而帝国CMS并没有自带这个功能,所以本文介绍了在列表页面批量添加Tags的方法。网上流传的是6.6版本使用的,这里修改后7.0,7.2版本可用的。

本文介绍通过修改程序源码实现在管理资讯时批量添加Tags,效果如下图:

修改步骤:

1、打开/e/admin/ecmsinfo.php,在任意2个elseif中间插入以下代码:

elseif($enews=="AddTags_all")//列表批量添加Tags

{

$classid=$_POST['classid'];

$id=$_POST['id'];

$tags=$_POST['add_listtags'];

$newstime=time();

eInsertTags2($tags,$classid,$id,$newstime);

}

2、打开/e/data/html/list/alllistinfo.php及listinfo.php(两个文件都要修改):

查找:

备注:多选框蓝色为未审核信息;发布者红色为会员投稿;信息ID粗体为未生成,点击ID可刷新页面.

修改为:

备注:多选框蓝色为未审核信息;发布者红色为会员投稿;信息ID粗体为未生成,点击ID可刷新页面.

3、将以下代码加入到/e/class/userfun.php

//加入TAG表

function eInsertTags2($tags,$classid,$id,$newstime){

global $empire,$dbtbpre,$class_r;

if(!trim($tags))

{

printerror("TAGS信息不能为空", "", 1, 0, 1);

return '';

}

$count = count($id); //统计ID数量

if (empty($count)){printerror("未选择信息ID", "", 1, 0, 1);}

$tags = RepPostVar($tags);

$tag = explode(",", $tags);

if (count($tag)>1) {  printerror("只能添加一个TAGS词", "", 1, 0, 1); }

$classid=(int)$classid;

$mid=(int)$class_r[$classid][modid]; //获取模型id

$tbname=$class_r[$classid][tbname];//获取表名

for($i=0;$i

{

$id[$i] = (int)$id[$i];

$fb = $empire->fetch1("select * from {$dbtbpre}ecms_".$tbname." where id='$id[$i]' limit 1");

$classid=$fb['classid'];

$newstime=$fb['newstime'];

$ftbname=$dbtbpre."ecms_".$tbname."_data_".$fb['stb'];

$r=$empire->fetch1("select tagid from {$dbtbpre}enewstags where tagname='$tags' limit 1");

$t = $empire->fetch1("select infotags from {$ftbname} where id='$id[$i]'");

$taga=$t['infotags'].",".$tags; //组合TAGS

$taga=trim($t['infotags'].",".$tags,","); //组合TAGS

$tagb[$i] = explode(",",$taga); //设置数组

$tagc=array_values(array_unique($tagb[$i])); //数组排重

$newtags[$i]=implode(",",$tagc);

if($r[tagid])

{

$datar=$empire->fetch1("select tagid,classid,newstime from

{$dbtbpre}enewstagsdata where tagid='$r[tagid]' and id='$id[$i]' and mid='$mid' limit 1");

if($datar[tagid])

{

if($datar[classid]!=$classid||$datar[newstime]!=$newstime)

{

$empire->query("update {$dbtbpre}enewstagsdata set classid=

'$classid',newstime='$newstime' where tagid='$r[tagid]' and id='$id[$i]' and mid='$mid' limit 1");

}

}

else

{

$empire->query("update {$dbtbpre}enewstags set num=num+1 where tagid='$r[tagid]'");

$empire->query("update {$ftbname} set infotags='$newtags[$i]' where id='$id[$i]'");

$empire->query("insert into {$dbtbpre}enewstagsdata(tagid,classid,id,newstime,mid)

values('$r[tagid]','$classid','$id[$i]','$newstime','$mid');");

}

}

else

{

$empire->query("update {$ftbname} set infotags='$newtags[$i]' where id='$id[$i]'");

$empire->query("insert into {$dbtbpre}enewstags(tagname,num,isgood,cid) values('$tags',1,0,0);");

$tagid=$empire->lastid();

$empire->query("insert into {$dbtbpre}enewstagsdata(tagid,classid,id,newstime,mid) values

('$tagid','$classid','$id[$i]','$newstime','$mid');");

}

}

printerror("批量添加TAGS成功", "", 1, 0, 1);

}

帝国 listenews.php,帝国cms7.2后台信息列表页批量添加tags相关推荐

  1. php 批量导入关键词,帝国cms7.0版本TAGS批量添加.TAGS批量复制到关键词的教程

    e/class/userfun.php添加函数 //批量复制TAGS到关键词 function eCopyTag2Key($classid,$id,$newstime){ global $empire ...

  2. 第15课:ul,添加新闻信息列表ol,添加图书销售排行榜

    使用ul,添加新闻信息列表 些列表就可以使用ul-li标签来完成.ul-li是没有前后顺序的信息列表. 语法: <ul><li>信息</li><li>信 ...

  3. 「后台列表页设计原则和技巧」

    摘要: 本文详述了管理后台列表页的设计原则和技巧,对于新手有很大的学习价值. 无论是什么类型的产品,几乎都会出现「列表页」,前台部分的列表页设计技巧已经有很多的介绍了,下面我以「电商系统」为例,谈谈业 ...

  4. Magento后台产品列表添加自定义属性

    在后台产品列表页添加自定义的属性,实现可以检索 app\code\core\Mage\Adminhtml\Block\Catalog\Product\Grid.php(建议进行重写) 我这里添加的属性 ...

  5. 帝国cms7.5编辑信息无法修改内容和上传图片解决办法

    帝国cms7.5编辑信息无法修改内容和上传图片主要问题有两个方面,一是栏目权限不够,二是系统模型没有勾选可修改项 1.栏目权限不够 这一点主要针对帝国cms搬家后产生的情况,帝国cms7.5搬家后除了 ...

  6. php 一键登录插件,帝国CMS一键登录插件(带后台管理)

    帝国CMS一键登录插件(带后台管理) 帝国CMS一键登录插件(带后台管理),整合QQ,weibo,MSN,百度等三方登陆平台 1.上传oauth文件夹到目录/e/extend/,直接上传oauth文件 ...

  7. PHP 织梦 帝国那个好,帝国、PHPCMS及织梦对比(十):推荐位功能

    网站中发布的文章除了需要按时间.栏目分类.类别调用外,往往需要根据编辑的推荐进行不同的调用,那么CMS自然少不了推荐位功能.一般推荐位的设计都有首页头条.首页幻灯焦点.首页推荐.栏目页推荐.列表页推荐 ...

  8. 列表页时间日期标签靠显示html,帝国CMS列表页面list.var分别调用年月日,显示个性时间日期...

    在帝国CMS中列表页个性时间显示的实现方式,首先我们要知道用什么方法来实现,这里我们使用PHP代码来做. 要在模板代码中使用PHP代码,就必须勾选此模板代码页面的-使用程序代码.位置就在添加模板页面的 ...

  9. ecms 列表模板php,帝国CMS列表页模板list.var分别调用年月日(显示个性时间日期)

    在帝国CMS中列表页个性时间显示的实现方式,首先我们要知道用什么方法来实现,这里我们使用PHP代码来做. 要在模板代码中使用PHP代码,就必须勾选此模板代码页面的-使用程序代码.位置就在添加模板页面的 ...

最新文章

  1. vue 引入的方法 用在template_?【有手就行】轻松打造属于自己的Vue工程化脚手架工具...
  2. 以后要把flex用起来
  3. 69 Zabbix 5.0通过agent监控一台服务器主机
  4. PHPStorm默认在新窗口打开
  5. C++对C的加强之 “实用性”增加
  6. VS2010上连接SQLite数据库
  7. 问答| 为何会采用倒车入库(侧方位停车)方式?
  8. 使用遇到的问题_使用三防整理剂做织物整理会遇到这些问题...
  9. SQL Server Compact 3.5 SP1 RTM发布了!
  10. 计算机数据库相关法规,法律法规数据库-详细页
  11. Android反编译,看这一篇就够了
  12. 从零开始学androidchronometer计时器组件.三十二.
  13. 20道你必须要背会的微服务面试题,面试一定会被问到
  14. 技术培训看这里,质谱仪,液相色谱理论实操相结合
  15. 21秋期末考试建设工程法规10221k1
  16. H5跳转微信公众号解决方案
  17. MySQL索引分析以及相关面试题
  18. Java入门之Digital eigenvalue
  19. 第四次作业 ——吴靖瑜
  20. 【Python】浮点数精度问题(包含解决方案)

热门文章

  1. .NET配置文件在写入时损坏
  2. UML2.0 学习笔记
  3. 编程语言之问:何时该借用,何时该创造?
  4. c# —— 枚举和值的隐藏副作用
  5. python快速排序最简单写法_面试官:来,这位精神小伙,简简单单写个快速排序吧...
  6. fread读取同一个文件得到缓冲区大小不同_缓冲区——计算机科学
  7. 模板设计模式_C常用设计模式——模板方法模式
  8. uni 修改数据页面不重新渲染
  9. php drive mssql,wamp下对MS SQLSERVER的连接配置,PHP+THINKPHP5通过
  10. Javascript中 != 和 !==的区别