当一个文章站大量采集内容,一次性全部发布完这一是不利于SEO的,也是容易作弊,所以从网上找了这个脚本稍作修改。分享给大家,其实也很简单,但比帝国自带的计划任务功能好的是,不用开启后台才运行,脚本放到服务器上后加入服务器的计划任务便可以每天定时审核发布信息。下面帝国CMS模板网来告诉大家帝国CMS自动审核发布信息脚本,一起来看看吧:
<?php //使用密码控制 if(empty($_GET['pwd'])||$_GET['pwd']!='脚本运行密码,请自行修改'){ die('Fuckyou!-!'); } define('EmpireCMSAdmin','1'); require("../class/connect.php"); require("../class/db_sql.php"); require("../class/functions.php"); require("../class/t_functions.php"); require("../data/dbcache/class.php"); require("../data/dbcache/MemberLevel.php"); $link=db_connect(); $empire=newmysqlquery(); $enews=$_POST['enews']; if(empty($enews)){ $enews=$_GET['enews']; } //参数$news_table="news";//新闻表 $news_num=1; //每次审核条数 /***使用时间控制审核的栏目,下面的代码因为栏目太多,每天分三个时段更新*实验证明这个效果是不好的,收录只有早上的那次* $hours=date('H');switch($hours){ //频道和列表 case'8':$where="bclassid=0orclassidbetween33and86"; break; case'13':$where="bclassid=0orclassidbetween87and139"; break; case'22':$where="bclassid=0orclassidbetween140and192"; break; default:$where="classid='10000'"; }*/ $where='1'; //审核新闻模型全部栏目 $class_list=$empire->query("SELECTclassid,islastfrom{$dbtbpre}enewsclasswhere$where"); $class=array(); $pclass=array(); while($r=$empire->fetch($class_list)){ if($r['islast']=='0'){ array_push($pclass,$r['classid']); //非终极栏目不可以发不信息,所以不参与信息审核 }else{ array_push($class,$r['classid']); } } foreach($classas$key=>$val){ ecmscheck($val,$news_table,$news_num); //审核}//刷新非终极栏目 foreach($pclassas$key=>$value){ echo'上级栏目'.$value.'已经更新<hr/>'; ReListHtml($value,1); } ReIndex(); //刷新首页 /****@param$classid*@param$table*@param$num*/ functionecmscheck($classid,$table,$num){ global$empire,$class_r,$dbtbpre; $time=time(); //每周一审核的设置为推荐 $isgood='0'; $day=strftime("%A"); if($day=='Monday'){ $isgood='1'; } $res=$empire->query("selectidfrom{$dbtbpre}ecms_".$table."_checkwhereclassid=".$classid."ORDERBY`truetime`ASCLIMIT{$num}"); while($r=$empire->fetch($res)){ $data[]=$r['id']; } CheckNews_auto($classid,$data); } /***审核信息*@param$classid*@param$id*/ functionCheckNews_auto($classid,$id){ global$empire,$class_r,$dbtbpre,$emod_r,$adddatar; $classid=(int)$classid; $count=count($id); $time=time(); //每周一审核的设置为推荐 $isgood=strftime('%A')=='Monday'?1:0; for($i=0;$i<$count;$i++){ $infoid=(int)$id[$i]; $infor=$empire->fetch1("select*from{$dbtbpre}ecms_".$class_r[$classid][tbname]."_checkwhereid='$infoid'limit1"); //$picurl=empty($infor['titlepic'])?'/images/smallpic/'.rand(1,300).'.jpg':$infor['titlepic']; //为了网站能好看点设置一个1-300的随机图片 $res=$empire->query("update{$dbtbpre}ecms_".$class_r[$classid][tbname]."_checksettruetime='$time',newstime='$time',lastdotime='$time',isgood='$isgood'whereid='$infoid'limit1"); $sql=$empire->query("update{$dbtbpre}ecms_".$class_r[$classid][tbname]."_indexsetchecked=1,truetime='$time',newstime='$time',lastdotime='$time'whereid='$infoid'"); //未审核表转换 MoveCheckInfoData($class_r[$classid][tbname],0,$infor['stb'],"id='$infoid'"); //更新栏目信息数 AddClassInfos($infor['classid'],'','+1'); //刷新信息 GetHtml($infor['classid'],$infor['id'],$infor,0); echo'信息'.$infor['id'].'内容页已经更新<hr/>'; //刷新列表 ReListHtml($infor['classid'],1); echo'终极栏目'.$infor['classid'].'已经更新<hr/>'; } } //刷新首页functionReIndex(){ $indextemp=GetIndextemp(); //取得模板 NewsBq($classid,$indextemp,1,0); echo'首页已经刷新'; }上面的代码放到e/extend/sc/.index.php 文件夹里面。
然后在服务器上搞个计划任务 定时打开这个地址 hide后面加 ?pwd=密码 即可!
OK!搞定!是不是很简单?赶紧去试试吧!
声明:有的资源均来自网络转载,版权归原作者所有,如有侵犯到您的权益 请联系邮箱:312334557@qq.com 我们将配合处理!
原文地址:《帝国CMS自动审核发布信息文章的方法(帝国cms自定义页面)》发布于2022-10-08 14:14:07