DedeCMS 批量取消审核文档的实现方法
发布时间:2010-03-16 17:34:26 作者:佚名 我要评论
今天在织梦论坛查看了一些关于自动定时审核的资料。 其中提到如果能先生成html 自动审核后就不需要重新生成,降低服务器消耗。其中提供的办法是 sql方式修改文章状态。但那样不可视化。
今天修改了几个地方的代码 实现了在原来dede文章批量管理的地方 添加一个 “取消审核” 如下图:
/*————————–
//取消审核文档
function checkArchives1() { }
—————————*/
else if($dopost=="checkArchives1″)
{
CheckPurview(‘a_Check,a_AccCheck,sys_ArcBatch’);
require_once(DEDEADMIN."/inc/inc_archives_functions.php");
if( !empty($aid) && empty($qstr) )
{
$qstr = $aid;
}
if($qstr==")
{
ShowMsg(“参数无效!",$ENV_GOBACK_URL);
exit();
}
$arcids = ereg_replace(‘[^0-9,]‘,",ereg_replace(‘`’,',’,$qstr));
$query = “Select arc.id,arc.typeid,ch.issystem,ch.maintable,ch.addtable From `dede_arctiny` arc
left join `dede_arctype` tp on tp.id=arc.typeid
left join `dede_channeltype` ch on ch.id=tp.channeltype
where arc.id in($arcids) “;
$dsql->SetQuery($query);
$dsql->Execute(‘ckall’);
while($row = $dsql->GetArray(‘ckall’))
{
$aid = $row['id'];
//print_r($row);
$maintable = ( trim($row['maintable'])==" ? ‘dede_archives’ : trim($row['maintable']) );
$dsql->ExecuteNoneQuery(“Update `dede_arctiny` set arcrank=’-1′ where id=’$aid’ “);
if($row['issystem']==-1)
{
$dsql->ExecuteNoneQuery(“Update `".trim($row['addtable'])."` set arcrank=’-1′ where aid=’$aid’ “);
}
else
{
$dsql->ExecuteNoneQuery(“Update `$maintable` set arcrank=’-1′ where id=’$aid’ “);
}
$pageurl = MakeArt($aid,false);
}
ShowMsg(“成功审核指定的文档!",$ENV_GOBACK_URL);
exit();
}
然后再修改管理目录(默认为Dede)的模板目录(templets)的文件:content_list.htm。
找到:
function checkArc(aid){
var qstr=getCheckboxItem();
if(aid==0) aid = getOneItem();
location="archives_do.php?aid="+aid+"&dopost=checkArchives&qstr="+qstr;
}
在其下面添加:
function checkArc1(aid){
var qstr=getCheckboxItem();
if(aid==0) aid = getOneItem();
location="archives_do.php?aid="+aid+"&dopost=checkArchives1&qstr="+qstr;
}
找到“审核"按钮的代码,在下面加取消审核,以下代码是审核与取消审核一起的:
<a href="javascript:checkArc(0)" class="coolbg"> 审核 </a>
<a href="javascript:checkArc1(0)" class="coolbg"> 取消审核 </a>
实现方法:
修改管理目录(默认为dede)下的文件:archives_do.php 插入以下代码(位置随意 可以放审核文档下面 方便记忆):
复制代码
代码如下:/*————————–
//取消审核文档
function checkArchives1() { }
—————————*/
else if($dopost=="checkArchives1″)
{
CheckPurview(‘a_Check,a_AccCheck,sys_ArcBatch’);
require_once(DEDEADMIN."/inc/inc_archives_functions.php");
if( !empty($aid) && empty($qstr) )
{
$qstr = $aid;
}
if($qstr==")
{
ShowMsg(“参数无效!",$ENV_GOBACK_URL);
exit();
}
$arcids = ereg_replace(‘[^0-9,]‘,",ereg_replace(‘`’,',’,$qstr));
$query = “Select arc.id,arc.typeid,ch.issystem,ch.maintable,ch.addtable From `dede_arctiny` arc
left join `dede_arctype` tp on tp.id=arc.typeid
left join `dede_channeltype` ch on ch.id=tp.channeltype
where arc.id in($arcids) “;
$dsql->SetQuery($query);
$dsql->Execute(‘ckall’);
while($row = $dsql->GetArray(‘ckall’))
{
$aid = $row['id'];
//print_r($row);
$maintable = ( trim($row['maintable'])==" ? ‘dede_archives’ : trim($row['maintable']) );
$dsql->ExecuteNoneQuery(“Update `dede_arctiny` set arcrank=’-1′ where id=’$aid’ “);
if($row['issystem']==-1)
{
$dsql->ExecuteNoneQuery(“Update `".trim($row['addtable'])."` set arcrank=’-1′ where aid=’$aid’ “);
}
else
{
$dsql->ExecuteNoneQuery(“Update `$maintable` set arcrank=’-1′ where id=’$aid’ “);
}
$pageurl = MakeArt($aid,false);
}
ShowMsg(“成功审核指定的文档!",$ENV_GOBACK_URL);
exit();
}
然后再修改管理目录(默认为Dede)的模板目录(templets)的文件:content_list.htm。
找到:
复制代码
代码如下:function checkArc(aid){
var qstr=getCheckboxItem();
if(aid==0) aid = getOneItem();
location="archives_do.php?aid="+aid+"&dopost=checkArchives&qstr="+qstr;
}
在其下面添加:
复制代码
代码如下:function checkArc1(aid){
var qstr=getCheckboxItem();
if(aid==0) aid = getOneItem();
location="archives_do.php?aid="+aid+"&dopost=checkArchives1&qstr="+qstr;
}
找到“审核"按钮的代码,在下面加取消审核,以下代码是审核与取消审核一起的:
复制代码
代码如下:<a href="javascript:checkArc(0)" class="coolbg"> 审核 </a>
<a href="javascript:checkArc1(0)" class="coolbg"> 取消审核 </a>
相关文章
- 这篇文章主要为大家介绍了dedecms使用SQL命令批量替换指定字符串的方法,可以实现针对指定字符串的精确替换功能,是非常实用的技巧,需要的朋友可以参考下2015-01-13
- 这篇文章主要为大家介绍了DedeCms批量写入数据的函数,分析了函数的用法,对dedecms二次开发有一定参考借鉴价值,需要的朋友可以参考下2015-01-09
- 这篇文章主要为大家介绍了Dedecms图集批量上传提示报错302的解决方法,需要加上对版本的判断来解决,具有一定参考借鉴价值,需要的朋友可以参考下2015-01-09
- 这篇文章主要为大家介绍了dedecms批量替换文章中超链接的方法,涉及正则匹配与SQL调用的技巧,需要的朋友可以参考下2014-12-26
- 这篇文章主要为大家介绍了批量删除织梦dedecms文档搜索关键词的方法,主要通过dedecms后台的SQL命令界面执行SQL语句来实现,是非常实用的技巧,需要的朋友可以参考下2014-11-24
dedecms批量更新静态时提示:没有该栏目数据 可能缓存的解决方法
这篇文章主要为大家介绍了dedecms批量更新静态时提示:没有该栏目数据 可能缓存的解决方法,是针对系统搬家或还原之后出现该提示的缓冲删除与更新的解决方法,非常具有实用价2014-11-17- 这篇文章主要为大家介绍了dedeCms批量修改文章发布时间的方法,需要的朋友可以参考下2014-07-16
- 遇到更换文件目录或者更换空间域名的情况,常常导致dede图片和缩略图不能够正常显示,从而影响dede的正常使用,于是有必要批量替换图片路径2014-06-30
用数据库批量修改替换dedecms文章标题和内容的步骤分享[图文]
如果一个dedecms系统的门户网站,里面的信息内容,已经成千上万,当有一天想要修改大部分文章中的信息时,单篇文章修改的方法不是太现在,那么现在给大家介绍一下用数据库2019-02-26DeDecms 最新漏洞plus/search.php漏洞批量利用工具
DeDecms最新plussearch.php漏洞批量利用工具2013-02-20
最新评论