帝国CMS如何批量修改信息标题

作为网站编辑,经常需要修改文章标题,如何快速修改呢?批量修改信息标题就是不错的主意。下面就来介绍实现批量修改信息标题方法。

以下修改方法可以同时用于 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?>" style="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、批量修改会员信息

79c8969a979d2865a0daab22c7cba8f4

2、批量修改tag属性

29edd7f9987ebc246c8ad6fb9cef64da

3、批量修改信息标题、文件名

f223b13b0e88959854a5c70dd93bccad

THE END