问题描述:后台审核或删除帖子,用户收不到提醒。分析源代码,发现无理由通过/删除帖子时,系统默认不发送pm。
问题解决:在php处理流程前判断是否有理由。如果没有理由,添加一个默认的理由,这样就可以实现总是发送pm。
解决方法:
需要修改的地方:
/source/admincp/moderate/moderate_thread.php
/source/admincp/moderate/moderate_reply.php
/source/include/modcp/modcp_moderate.php
可能还有moderate/下的其它文件(按照需求来修改)
在moderate_thread.php中查找
if(isset($_G['gp_'.$pm]) && $_G['gp_'.$pm] <> '' && $thread['authorid']) {
在moderate_reply.php中查找
if(isset($_G['gp_'.$pm]) && $_G['gp_'.$pm] <> '' && $post['authorid']) {
在上方插入
$_G['gp_'.$pm] = (isset($_G['gp_'.$pm]) && $_G['gp_'.$pm] <> '') ? $_G['gp_'.$pm] : '感谢您的支持,论坛有您更加精彩!';
在/source/include/modcp/modcp_moderate.php中查找
if($_G['gp_reason'] != '' && $post['authorid'] && $post['authorid'] != $_G['uid']) {
修改为
$_G['gp_reason'] = $_G['gp_reason']!='' ? $_G['gp_reason'] :'感谢您的支持,论坛有您更加精彩!'; if($_G['gp_reason'] != '' && $post['authorid']) {
找到
if($_G['gp_reason'] != '' && $thread['authorid'] && $thread['authorid'] != $_G['uid']) {
修改为
$_G['gp_reason'] = $_G['gp_reason']!='' ? $_G['gp_reason'] :'感谢您的支持,论坛有您更加精彩!'; if($_G['gp_reason'] != '' && $thread['authorid']) {
注意,每个文件中可能存在多于一个这样的修改点。(前两个文件是两个,最后那个文件是四个)
本博客文章已转移到独立博客,查看本文请点击做最好的三三查看全文。