帝国CMS如何批量修改文章标题
2018-10-17 站长 站长日志
作为网站编辑,经常需要修改文章标题,如何快速修改呢?批量修改信息标题就是不错的主意。本文东坡网原创,介绍实现批量修改信息标题方法。
以下修改方法可以同时用于 e/data/html/list/alllistinfo.php文件 和 e/data/html/list/listinfo.php文件,或者自定义的系统模型列表文件。
第一步 查找 $ignamer=$ftnr['igr']; 在其下一行插入如下代码
function dp_editmoreinfotitle($add,$userid,$username){
global $empire,$dbtbpre,$class_r;
$classid=(int)$add['classid'];
$infoid=$add['infoid'];
$n1=$add['title'];
$count=count($infoid);
$tbname=$class_r[$classid]['tbname'];
if(!$classid||!$tbname||!$count)
{
printerror("请选择需要修改的信息",'history.go(-1)',1,0,1);
}
//操作权限
$doselfinfo=CheckLevel($userid,$username,$classid,"news");
if(!$doselfinfo['doeditinfo'])//编辑权限
{
printerror("没有足够的权限",'history.go(-1)',1,0,1);
}
$dopubid=0;
$donum=0;
$dolog='';
//主表
$infotb='';
for($i=0;$i<$count;$i++)
{
$doinfoid=(int)$infoid[$i];
if(empty($infotb))
{
//索引表
$index_r=$empire->fetch1("select classid,checked from {$dbtbpre}ecms_".$tbname."_index where id='$doinfoid' limit 1");
if(!$index_r['classid'])
{
continue;
}
//返回表
$infotb=ReturnInfoMainTbname($tbname,$index_r['checked']);
}
$do1=$n1[$i];
$empire->query("update ".$infotb." set title='$do1' where id='$doinfoid'");
}
printerror("修改成功",$_SERVER['HTTP_REFERER'],1,0,1);
}
$enews=$_POST['enews'];
if($enews=="EditMoreInfoTitle"){
hCheckEcmsRHash();
dp_editmoreinfotitle($_POST,$logininid,$loginin);
}
第二步 查找 <?=$r[title]?> 找到后如下操作
将<?=$r[title]?> 和上下一行的 <a >和</a>删除(一共删除3行),换成代码:
<input type="text" name="title[]" value="<?=$oldtitle?>" "width:99%">
第三步 查找 <span id="moveclassnav"></span>
在其上插入一行,输入代码:
<input type="submit" name="Submit7" value="批量修改标题" onclick="document.listform.enews.value='EditMoreInfoTitle';document.listform.action='ListAllInfo.php';">
补充说明
1、修改完成后样式可能不是人人喜欢,可以根据自己的喜好做样式修改。
2、网站备份时请备份e/data/html/list文件夹。
3、可以扩展成批量修改作者、来源、图片、tag、关键字等等。
更多批量修改的例子
1、批量修改会员信息
2、批量修改tag属性
3、批量修改信息标题、文件名