以前,一个人气高,成功的博客是不那么好管理的。很多人会在你博客上发表垃圾评论来吸引流量,有些是机器人,或者是自己写的插件,还有可能是最没技术含量的手工回复。
但是在 WordPress 下,一个开放平台,自然就有了很多的解决方案。在本文中,我们将会讲到 6 个简单而又有效的方法来解决 spam 垃圾评论。
1. Akismet, 反 spam 插件的龙头老大
这能阻止:包括自动和手动发的评论
既然我们要写一个解决垃圾评论的文章,那么肯定得以最流行的插件开始讲起吧。现在这个插件都已经整合到 WordPress 默认安装包里面了,因为插件的高质量,也成为用户的必备插件了。
在评论发布到你的博客上之前,会先经过他们的服务器,如果它说“可以”,那么评论就可发布了,如果它说“不可以”,那么评论就会被放到 spam 评论里面。
在使用之前你需要注册一下,一般用户使用免费版的就足够了。获取 API key 之后填到设置页面就能使用.
2. 用 .hatccess 禁止对 wp-comments-post.php 的直接访问
这能阻止:自动的 spam
往 .hatccess 文件里面加入一下代码。你就可禁止 wp-comments-post.php 的直接访问。
1
2
3
4
5
6
|
RewriteEngine On RewriteCond %{REQUEST_METHOD} POST RewriteCond %{REQUEST_URI} .wp-comments-post.php* RewriteCond %{HTTP_REFERER} !.*yourdomainname.* [OR] RewriteCond %{HTTP_USER_AGENT} ^$ RewriteRule (.*) ^http: // %{REMOTE_ADDR}/$ [R=301,L] |
原理很简单,如果访客不是在你博客页面停留来发评论的,那么他就无法进行操作。这段代码还有个好处,那就是 spam 机器人是不会引起服务器资源占用的,因为它们无法访问。
3. “Cookies for Comments” 插件
这能阻止:自动的和手动的 spam
在插件推荐这方面要保持公正没有偏见,不过 Cookies for Comments 这个插件是目前我用过的最好用的一个。
插件的作者 Donncha O Caoimh 是这样描述的,这个插件会网你博客的 html 源代码里面加入一个样式表或者是图像。当浏览器载入这个样式表或者图像的时候,会生成一个 cookie,如果用户要发表评论的话就会检查这个 cookie,如果 cookie 不存在的话,那么评论就会当作 spam.
就是这么简单,这个插件还有一个特点就是他还可以检查评论发布的速度。比如说,评论是在载入页面之后3秒就发布的,那么这就很可能是 spam. 这个你可以在设置页面里面进行调整,对这些评论的处理方式也可以设置,有两个选项:判为 spam 或者是 直接删除。
4. 使用第三方的评论平台
这能阻止:自动 spam
使用评论系统的是有好处的:Spam 机器人通常一点办法都没有的,因为这些评论系统是在 iFrame 框架里面或者是其他框架,机器人拿这个没办法。
所以,如果你遇到越来越多的垃圾评论,你可以去使用第三方的评论平台。这些评论系统不仅有更多的功能,而且美观。好的用户体验让用户愉快,对我们来说,这 是一个对垃圾评论免疫的平台,两全其美。
我在这里就推荐几个第三方评论系统吧。
Jetpack, Disqus, Facebook Comments 和 多说
5. 在发送按钮那增加一个复选框
这可以阻止:机器人 spam
这并不是一个很好的办法,但是这可以帮组你解决垃圾评论,而且不会对正常留言的用户造成影响。
首先,你需要在你主题的评论里面增加一个复选框(多数情况下都是在 comments.php 文件里面添加),加入如下代码:
1
|
<label for = "enable" ><input type= "checkbox" name= "enable" id= "enable" onClick= "apply()" class = "enable_checkbox" > Check this box to enable the send button</label> |
直接加在“提交”按钮的上面就可以了,注意下“提交”按钮的 “name” 属性和