拒绝WordPress黑名单评论的发表

WordPress的垃圾评论和广告很多,当我们遇到垃圾评论的时候,我们往往会把垃圾评论的相关信息添加在后台设置的黑名单添中,然而即使添加了黑名单,同样信息的垃圾评论再来的时候,WordPress还是能发表,只是被自动标记为垃圾评论了。这样来看垃圾评论还是会写入数据库,整个黑名单保护机制也不够完善。既然如此,那就直接拒绝符合黑名单中条件的评论发表, 不让评论写入数据库,是不是最好的呢。

方法一:

将以下代码加入到functions.php

function mac_fuckspam($comment) {  
    if(  is_user_logged_in()){ return $comment;} //登录用户无压力...  
     
    if( wp_blacklist_check($comment['comment_author'],$comment['comment_author_email'],$comment['comment_author_url'], $comment['comment_content'], $comment['comment_author_IP'], $comment['comment_agent'] )){  
        header("Content-type: text/html; charset=utf-8");  
        exit('你填写的某项信息或IP地址已被列入黑名单,无法进行评论,请文明评论!');  
    }  else  {  
        return $comment;   
    }  
}   
add_filter('preprocess_comment', 'mac_fuckspam');

方法二:

将以下代码加入到comments-ajax.php中(比如检查评论太快那段函数后面)

if( wp_blacklist_check($comment_author,$comment_author_email,$comment_author_url, $comment_content )&&!is_user_logged_in()){//登录用户还是无压力...  
        err(__('你填写的某项信息或IP地址已被列入黑名单,无法进行评论,请文明评论!'));     
    }

然后就可以到设置→讨论→黑名单中增加你要过滤的内容即可,效果如图:

然后还可以结合以前的文章做更多的限制:

WordPress屏蔽所有非中文系语种垃圾评论的方法-灵阳星空
© 版权声明
THE END
喜欢就支持一下吧
点赞14赞赏
分享
评论 抢沙发

请登录后发表评论