为Discuz x系列程序文章审核添加提示功能
discuz自带的审核功能中,缺少一个提示功能,虽然发布文章确实可以限制审核,但是管理员不通过后台查看审核内容,就不会发现文章审核信息。所以就在前台首页的用户信息中的【提示】显示出来,方便管理员审核内容。还是根据之前的方法而言,通过发布文章的POST链接: portal.php?mod=portalcp&ac=article
找到需要修改的文件:./source/module/portal/portal_portalcp.php
发现如下代码:
require_once libfile('function/portalcp');//被调用的函数文件
require_once libfile('portalcp/'.$ac, 'include');//真正操作的文件然后再找到文件: ./source/include/portalcp/portalcp_article.php
发现提交的代码:
if(submitcheck("articlesubmit", 0, $seccodecheck, $secqaacheck)) {...这就好办了,只需要在文章操作数据库之后添加提示功能就可以解决了。
在提示信息中,需要获得对应文章的ID,方便管理员可以直接访问该文章。于是在如下代码之后:
$aid = DB::insert('portal_article_title', $setarr, 1);刚好添加文章数据之后返回了对应文章的ID。
接下来就实现提示功能:
/************************************/
/*用户提示功能对应的数据表为:pre_home_notification*/
/*1. 添加提示信息数据*/
/*2. 更新提示数目
/*提示数目对应的数据表为: pre_common_member newprompt字段*/
/************************************/
/*添加提示信息数据*/
//文章为审核状态
if($article_status == 1){
$JMess = "<div style=\"padding:10px;\"><h3>".文章审核."</h3>您好! "."用户".$_G['username']."发布了一篇文章【<a href="\" style="><b><i>".$setarr['title']."</i></b></a>】,【<a href=\"admin.php?frames=yes&action=moderate&operation=articles&dateline=all\" style=\"color:red;\" ><b><i>请审核...</i></b></a>】.</div>";
$jarr = array(
'uid'=>'1',
'type'=>'system',
'new'=>'1',
'author'=>'jhonse',
'note'=>$JMess,
'dateline'=>TIMESTAMP,
'from_id'=>$aid,
'from_idtype'=>'aid'
);
DB::insert('home_notification', $jarr, 1);
/*更新提示数目*/
DB::query('UPDATE '.DB::table("common_member")." SET newprompt=newprompt+1 WHERE uid = 1");
/*****************************************/
}
页:
[1]