您现在的位置是:首页 > 教程 > 帝国CMS教程帝国CMS教程
帝国CMS自动审核文章软件发布脚本
白易2023-05-28 22:02:01帝国CMS教程已有人查阅
导读网站如果是采集的,一次性审核发布大量采集信息不利于网站seo,使用这款帝国CMS自动审核发布脚本就可以轻松解决这个问题。比帝国自带的计划任务功能好
网站如果是采集的,一次性审核发布大量采集信息不利于网站seo,使用这款帝国CMS自动审核发布脚本就可以轻松解决这个问题。比帝国自带的计划任务功能好,不用开启后台才运行,脚本放到服务器上后加入服务器的计划任务便可以每天定时审核发布信息。
帝国CMS自动审核脚本
<?php
//使用密码控制
if(empty($_GET['pwd']) || $_GET['pwd'] != '脚本运行密码,请自行修改'){
die('Fuck you! -www.lwtz.cn!');
}
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 = new mysqlquery ();
$enews = $_POST ['enews'];
if (empty ( $enews )) {
$enews = $_GET ['enews'];
}
//参数
$news_table = "news"; //新闻表
$news_num = 1; //每次审核条数
/**
*使用时间控制审核的栏目,下面的代码因为栏目太多,每天分三个时段更新
*实验证明这个效果是不好的,收录只有早上的那次
*
$hours = date ( 'H' );
switch($hours){
//频道和列表
case '8': $where = "bclassid = 0 or classid between 33 and 86";
break;
case '13': $where = "bclassid = 0 or classid between 87 and 139";
break;
case '22': $where = "bclassid = 0 or classid between 140 and 192";
break;
default: $where = "classid='10000'";
}
*/
$where = '1'; //审核新闻模型全部栏目
$class_list = $empire->query ( "SELECT classid,islast from {$dbtbpre}enewsclass where $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 ( $class as $key => $val ) {
ecmscheck ( $val, $news_table, $news_num ); // 审核
}
// 刷新非终极栏目
foreach ( $pclass as $key => $value ) {
echo '上级栏目'.$value.'已经更新<hr/>';
ReListHtml ( $value, 1 );
}
ReIndex(); //刷新首页
/**
*
* @param $classid
* @param $table
* @param $num
*/
function ecmscheck($classid, $table, $num) {
global $empire, $class_r, $dbtbpre;
$time = time ();
// 每周一审核的设置为推荐
$isgood = '0';
$day = strftime ( "%A" );
if ($day == 'Monday') {
$isgood = '1';
}
$res = $empire->query ( "select id from {$dbtbpre}ecms_" . $table . "_check where classid =" . $classid . " ORDER BY `truetime` ASC LIMIT {$num}" );
while ( $r = $empire->fetch ( $res ) ) {
$data [] = $r ['id'];
}
CheckNews_auto ( $classid, $data );
}
/**
* 审核信息
* @param $classid
* @param $id
*/
function CheckNews_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] . "_check where id='$infoid' limit 1" );
//$picurl = empty($infor['titlepic'])?'/images/smallpic/'.rand(1,300).'.jpg':$infor['titlepic']; //为了网站能好看点设置一个1-300的随机图片
$res = $empire->query("update {$dbtbpre}ecms_".$class_r[$classid][tbname]."_check set truetime='$time',newstime='$time',lastdotime='$time',isgood='$isgood' where id='$infoid' limit 1");
$sql = $empire->query ( "update {$dbtbpre}ecms_" . $class_r [$classid] [tbname] . "_index set checked=1,truetime='$time',newstime='$time',lastdotime='$time' where id='$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/>';
}
}
//刷新首页
function ReIndex(){
$indextemp=GetIndextemp();//取得模板
NewsBq($classid,$indextemp,1,0);
echo '首页已经刷新';
}
脚本需要根据自己的情况适当修改调整。因为我用的Linux服务器,所以运行crontab就可以了,Windows的请自行寻找计划任务方法。宝塔面板直接添加计划任务就行。
本文标签:
很赞哦! ()
随机图文
-
帝国CMS投稿跳过选栏目跳转到投稿表单页的方法
帝国CMS正常网站投稿流程是 登录后进入会员中心,点击投稿会有一个投稿栏目的页面,选择投稿栏目完后才能进入投稿表单页。但有时候,我们的投稿栏目就一个栏目 -
帝国cms商城怎么根据会员权限显示指定字段的方法
有时候我们希望网站的不同会员组到看的内容不一样,比如价格或者其它信息。通过以下方法可以实现: -
帝国CMS无相关信息时调用其它信息的方法
帝国cms默认的[!--other.link--]标签调用相关链接时,如果没有相关链接的话,则会显示“暂无相关链接”。对于一些采集站或其他需要增加内链的网站来说 -
帝国7.5可以支持PHP7.2和MYSQL8.0环境吗
帝国CMS7.5官方说的支持PHP7.0及以上环境,但支持PHP7.2+MYSQL8.0环境吗? 理论上 php.ini配置的适合 可完美支持,支持PHP7.0,7.0以上会有少量问题。
留言与评论 (共有 条评论) |