织梦cms增加批量更新文章时间功能

时间:2014-08-26

织梦的采集是比较方便的,另外也可以用诸如火车头、ET这样的采集软件,但是一般采集到网站的文章,都不会马上就发表出去,这样一方面可以对文章进 行伪原创增加文章的质量和用户体验;另一方面也方便网站安排内容更新。一般如果是手工修改的话,你修改了内容保存之后,织梦就会自动更新文章的发布时间, 只是当你需要批量审核文章的时候,才会发现文章的时间还是你发布的时间,这样对用户以及搜索引擎都是非常不利的。笔者做一个美女站的时候碰到了这样的问 题,弄了个更新时间的按钮,可以批量更新文章的发布时间。下面就是具体的实现方法:

首先在后台目录中找到后台的模板文件夹,默认是在dede文件夹下的templets文件夹中。本次修改的系统模板主要有四个 content_i_list.htm,content_s_list.htm,content_sg_list.htm,以及dede文件夹js目录下 的list.js文件;在每个文件的后面都增加了下面的代码段

function updatetime(aid){
 var qstr=getCheckboxItem();
 if(aid==0) aid = getOneItem();
 location=“archives_do.php?aid=”+aid+“&dopost=updatetime&qstr=”+qstr;
 }
 <a href=“javascript:updatetime(0)”class=“coolbg”>更新时间a>


然后找到dede目录下的archives_do.php文件,在审核文档函数的前面增加updatetime函数即可。updatetime函数的代码如下:

elseif($dopost==‘updatetime’)
   {
   $pubdate =GetMkTime(GetDateTimeMk(time()));
   $senddate = time();
   $sortrank =AddDay($pubdate,$sortup);
   if(!empty($aid)&& empty($qstr))
   {
   $qstr = $aid;
   }
   if($qstr==‘’)
   {
   ShowMsg(“参数无效!”,$ENV_GOBACK_URL);
   exit();
   }
   $qstrs = ereg_replace(‘[^0-9,]’,‘’,ereg_replace(‘`’,‘,’,$qstr));
   $hghsql=“Update `update_archives` set `pubdate`=‘$pubdate’,`senddate`=‘$senddate’,`sortrank`=‘$sortrank’ where id in ($qstrs) ”;
   //echo $senddate.“
   ”.$hghsql;exit();
 
   if(!$dsql->ExecuteNoneQuery($hghsql)){
   $gerr = $dsql->GetError();
   ShowMsg(“把数据保存到数据库主表 `update_archives` 时出错,请把相关信息提交给DedeCms官方。”.str_replace(‘“’,‘’,$gerr),”javascript:;“);
   exit();
   }else{ShowMsg(”成功更新指定文件。..“,$ENV_GOBACK_URL);exit();}
   }


以上的方法只适合dedecms5.7sp1,对于5.6及以前的版本,需要修改content_list.htm文件。好了,现在你可以方便的对 织梦未审核的文章进行批量更新时间了。为了方便下新手,笔者还是把已经修改好的代码打包好,需要的话就下载试试,特别强调下哦,一定要先备份哦。


上一篇:织梦cms增加php函数功能 下一篇:DEDECMS内容页图片太大导致布局混乱的解决方法

相关文章

最新文章