在使用dedecms(以V57_UTF8_SP1版本为例)进行网站内容管理时,我们发现互动部分具备词语过滤功能,然而文章发布部分却未集成这一功能。为了提升内容发布的规范性,我们可以手动为文章发布功能添加禁用词语过滤机制。
首先,在文件/dede/article_add.php中找到如下代码:
if(!TestPurview('a_Check,a_AccCheck,a_MyCheck'))
{
$arcrank = -1;
}
在这段代码之前,添加以下词汇过滤检查的代码:
if( $cfg_notallowstr != '' )
{
if(preg_match("#".$cfg_notallowstr."#i", $title))
{
ShowMsg("标题包含禁止使用的词汇!","-1");
exit();
}
if(preg_match("#".$cfg_notallowstr."#i", $shorttitle))
{
ShowMsg("简略标题包含禁止使用的词汇!","-1");
exit();
}
if(preg_match("#".$cfg_notallowstr."#i", $description))
{
ShowMsg("描述包含禁止使用的词汇!","-1");
exit();
}
if(preg_match("#".$cfg_notallowstr."#i", $body))
{
ShowMsg("正文包含禁止使用的词汇!","-1");
exit();
}
}
以上代码的作用是:当文章标题、简略标题、描述或正文内容中包含配置文件中定义的禁止词汇时,系统将提示错误信息并终止操作。这有助于管理员确保发布的内容符合规范。
此外,为了使文章编辑功能也具备相同的词语过滤能力,还需要修改/dede/article_edit.php文件中的对应部分,确保编辑状态下同样可以进行词语过滤。
通过上述步骤,我们成功地为dedecms的文章发布与编辑功能添加了词语过滤机制,从而提升了网站内容的质量和合规性。
注意:在实际操作中,请确保备份原始文件,以便在出现问题时能够快速恢复。
请根据自身需求调整代码中的提示信息,使其更贴合您的业务场景。