WordPress模板插件定制

您现在的位置是:首页 > WordPress教程WordPress教程

WordPress评论审核搞不定?老司机教你从0到1设置规则,垃圾评论退退退!

查看 WP集市 的更多文章WP集市 2025-08-21 【WordPress教程】 521人已围观

你是不是也遇到过,博客刚发篇文章,评论区就被“卖茶叶的”“办假证的”“代刷流量的”占领了?后台一看,几十条评论全是广告,删到手软有没有!其实WordPress评论审核没那么麻烦,今天咱就从基础到进阶,手把手教你设置规则,让垃圾评论自动“滚蛋”,省心又省力!

先搞定基础设置:WordPress自带的“守门员”

别一上来就找插件,WordPress自己就带了不少“防垃圾”功能,藏在“设置-讨论”里,咱先把这些开关打开:

  1. 评论必须手动批准:勾上“评论必须由管理员批准”,这样新评论不会直接显示,得你点头才行——虽然麻烦点,但能过滤掉大部分一眼假的垃圾。
  2. 评论者必须填邮箱/姓名:取消“允许匿名评论”,强迫评论者留邮箱(虽然邮箱也能瞎填,但多少能拦住一批懒鬼)。
  3. 关闭旧文章评论:勾上“自动关闭超过[X]天的文章评论”(比如30天),老文章没人看还招垃圾,关了省心!

进阶操作:用几行代码“精准打击”敏感词

基础设置只能防“笨贼”,遇到那种带点“技术含量”的垃圾评论(比如换着词发广告),就得上代码了。别怕,下面的代码复制粘贴就行,简单粗暴!

第一招:关键词过滤——让“广告”“网址”无处遁形

很多垃圾评论会带“微信”“QQ”“网址链接”“广告”这些词,咱直接写个函数,检测到就拒绝提交!

打开你主题的functions.php(路径:wp-content/themes/你的主题名/functions.php),在最后加这段代码:

// 评论关键词过滤:遇到敏感词直接打回
function custom_comment_filter($commentdata) {
    // 要过滤的词:自己根据评论区垃圾内容调整,多加点准没错
    $bad_words = array('广告', '微信', 'QQ', '网址', '链接', '代刷', '赚钱');
    // 先把评论内容里的空格去掉(防止有人用“广 告”这种拆分方式躲过滤)
    $comment_content = str_replace(' ', '', $commentdata['comment_content']);
    // 逐个检查敏感词
    foreach ($bad_words as $word) {
        if (strpos($comment_content, $word) !== false) {
            wp_die('评论包含敏感词,请修改后提交!'); // 直接弹提示,终止提交
        }
    }
    return $commentdata; // 没问题就放行
}
// 挂到评论提交前的钩子上(preprocess_comment就是评论提交前的“安检口”)
add_filter('preprocess_comment', 'custom_comment_filter');

原理preprocess_comment这个“触发点”会在用户提交评论时先跑一遍咱写的函数,检查到敏感词就用wp_die直接“掐断”提交,连后台都进不来——简单说,就是“发现坏人直接拒之门外”!

第二招:IP黑名单——同一个IP反复搞事?直接拉黑!

有些垃圾评论来自固定IP(比如某个服务器批量发的),咱把这些IP记下来,下次它再评论直接扔进“垃圾评论箱”。

同样在functions.php里加这段:

// IP黑名单:封禁反复发垃圾的IP
function block_spam_ips($approved) {
    // 要拉黑的IP:去后台“评论-垃圾评论”里看,重复出现的IP记下来
    $spam_ips = array('123.45.67.89', '98.76.54.32', '111.222.33.44');
    // 获取当前评论者的IP($_SERVER['REMOTE_ADDR']就是访客IP)
    $user_ip = $_SERVER['REMOTE_ADDR'];
    // 如果IP在黑名单里,直接标记为垃圾
    if (in_array($user_ip, $spam_ips)) {
        return 'spam'; // 返回'spam'会自动扔进垃圾评论箱,不显示
    }
    return $approved; // 不在黑名单就按默认规则处理(比如待审核)
}
// 挂到评论审核钩子上(pre_comment_approved是决定评论是否通过的“裁判”)
add_filter('pre_comment_approved', 'block_spam_ips');

小技巧:怎么找垃圾IP?去后台“评论-垃圾评论”,每条评论右边都有“IP”信息,同一个IP出现3次以上,直接拉黑准没错!

懒人必备:插件“全自动”拦截

要是嫌代码麻烦,直接上插件!推荐两个“傻瓜式”工具,装上基本能挡住80%的垃圾评论:

  1. Akismet:WordPress官方插件,免费版够用!它会自动学习垃圾评论特征(比如内容重复、IP信誉低),直接把垃圾扔进垃圾桶,你偶尔去清空一下就行——就像请了个“智能门卫”,比人工判断准多了。
  2. Antispam Bee:开源免费,支持IP黑名单、关键词过滤、邮箱验证(检测是否是真实邮箱),功能比Akismet细,适合喜欢自己调参数的同学。

最后说句大实话:审核规则得“动态调整”

别想着一次性设置好就万事大吉!垃圾评论也会“进化”,今天用“广告”,明天可能换“推广”;今天这个IP,明天可能换一批。所以每隔一周去后台看看垃圾评论,把新出现的敏感词、IP加进规则里——就像打游戏升级装备,规则越磨越锋利,评论区才能一直干净!

总之啊,评论审核就像守门,基础设置是“门栓”,代码是“栅栏”,插件是“看门狗”,多管齐下,垃圾评论自然就少了。试试上面的方法,保准你后台清净多了,再也不用删评论删到手指疼!觉得有用的话,点个赞再走呗~

Tags:

WordPress模板插件定制