加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > CMS系统 > wordpress > 正文

屏蔽WordPress博客垃圾评论

发布时间:2020-12-14 14:24:45 所属栏目:wordpress 来源:网络整理
导读:由站长 通过网络收集整理的代码片段。编程之家小编现在分享给大家,也给大家做个参考。 记得刚开始建立 wordpress 博客的时候,无论在国内还是国外的空间主机上搭建的 WordPress 博客,无论 WordPress 有多少流量多么低的权重,垃圾评论都会

以下代码由PHP站长网 52php.cn收集自互联网现在PHP站长网小编把它分享给大家,仅供参考

记得刚开始建立 wordpress 博客的时候,无论在国内还是国外的空间主机上搭建的 WordPress 博客,无论 WordPress 有多少流量多么低的权重,垃圾评论都会自动找上门来,每天都能收到一大堆的垃圾评论,但是有不想设置启用登陆后才可以评论,不然访客每次留言都需要注册登陆,违背了当初做博客的初衷,作为一个博客程序,Wordpress 实际上也自带了一些简单的防止垃圾评论的设置,如果能够充分利用好这些功能,也能从 WordPress 程序本身达到一定的反垃圾评论效果了,但是这样远远不够偶尔还是出现了一个棋牌网站视频网站广告,忍无可忍的是居然用小说的内容来评论。

WordPress 垃圾评论数量多容易掩盖正常的读者评论,批量删除垃圾评论又容易造成误删,WordPress 垃圾评论发布机器持续不断地向网站提交评论请求,频率足够高的话则变演变成一种网站攻击,配置差一些的网站主机很有可能因此而运行缓慢,严重者造成服务器宕机,无法正常访问。WordPress 的垃圾评论的危害是不言而喻的,对付 WordPress 垃圾评论不仅要“阻断”垃圾评论的发布,更要提前“阻止”垃圾评论的提交,要让垃圾评论无处可藏,无机可趁。那么到底如何有效的防止垃圾评论呢?下面我把自己的实践经验和从网上学来的方法和大家分享,如果你正被博客的垃圾评论所困扰,可以参考文章的方法来解决。

一、使用 AKismet 插件

这个插件在 wordpress 安装好之后就自带了,但是需要大家去自己申请一个 Akismet key 才可以使用,大家可以根据插件给出的链接地址去申请个人 key,这个插件对于个人使用时,可以免费的申请 key。

二、自带评论黑名单

击 wordpress 后台的设置,讨论,其中就可以看到有评论审核和评论黑名单两个设置项,评论审核项“当某条评论包含超过 个超链接时,将其放入等待审队列。(垃圾评论通常含有许多超链接。)当评论的内容、评论者名称、URL、电子邮件或 IP 地址中包含其中任何关键字时,系统将自动把评论放入待审队列。在里面添加将要屏蔽的关键词,一行一个关键字或 IP 地址。WordPress 也会在词中匹配关键字,例如“press”亦将匹配“WordPress”。”



然后再去主题目录下找到 function.php,DUX 是 function_theme.php 文件,向里面添加如下代码:

/* 评论验证 */

function refused_spam_comments( $comment_data ) {

if( is_user_logged_in()){ return $comment_data;} //登录用户不验证

$pattern = '/[一-龥]/u'; //验证是否存在中文

if(!preg_match($pattern,$comment_data['comment_content'])) {

err('评论必须含中文!');

}

if( wp_blacklist_check($comment_data['comment_author'],$comment_data['comment_author_email'],$comment_data['comment_author_url'],$comment_data['comment_content'],$comment_data['comment_author_IP'],$comment_data['comment_agent'] )){

// header("Content-type: text/html; charset=utf-8");

err('你填写的某项信息或IP地址已被列入黑名单,无法进行评论,请文明评论!');

} else {

return $comment_data;

}

}

add_filter('preprocess_comment','refused_spam_comments');

三、其他防垃圾评论插件

比如说 Math Comment Spam Protection 或者 Some Chinese Please 等插件,或者产生一些随机码的插件来防止评论机器人的垃圾评论。因为就算是 Akismet 拦截住了垃圾评论,但是这些垃圾评论还是占用着数据库,这些垃圾评论还是进入了评论数据库,自己每次都是手动批量删除,特备是有大量垃圾评论的时候,就直接点击上面的全选,批量删除,这样很难说不会误伤个别被误判的非垃圾评论。所以安装插件也是不错的选择。这样直接杜绝了机器人的评论进入数据库,效果是很不错的。

以上内容由PHP站长网【52php.cn】收集整理供大家参考研究如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读