如何快速删除垃圾评论

被垃圾评论搞得很郁闷之后,我想到了应该可以去数据库里删除垃圾评论。到网站空间的后台,使用phpmyadmin登录数据库,然后选择wp_comments这个表,执行SQL语句,这个SQL语句可以根据出现在各个垃圾评论里的某个关键词来设计,比如垃圾评论的作者邮箱地址一般都有个buy字,那么用如下的SQL语句:

SELECT * FROM `wp_comments` WHERE `comment_author_email`  LIKE  ’%buy%’

得到查询结果,再全选,然后删除。这样就可以快速地把垃圾评论删除掉了。建议先select出来,看看所得的结果是不是垃圾评论,然后再删除。不要一开始就用delete语句,以免删错了。

可以选择不同的字段来匹配某一条件,上面是用了评论者的email地址,你也可以用评论者的昵称,评论内容,评论者的IP等等字段来代替,只要将相应的字段名填入上面的SQL语句里就行了。如果你用评论内容来匹配的话,注意不要用你的博客里显示的评论的词来设计条件,因为垃圾评论里的词多数都是转向某一链接的,它在数据库里就会显示相应的网站地址,而并不显示你所看到的词。要先在数据库里看它真正的显示内容,再用其中的某一关键词来作为查询条件。比如我的博客里的垃圾评论很多都是指向一个nexo的网站的,虽然博客的垃圾评论里并没有显示nexo这个词,但我用以下的SQL语句:

SELECT * FROM `wp_comments` WHERE `comment_content`  LIKE  ‘%nexo%’

也能查询出大部分的垃圾评论,可以删的很干净。

在用数据库删除垃圾评论的时候,我遇到了一个奇怪的问题:我在数据库里已经删除那些评论,但刷新我的博客后,发现那些垃圾评论还在那里,数目也没有变,一度让我怀疑是不是这个方法行不通。我把浏览器关了再开,重复了几次后才看到垃圾评论的数目减少了。这应该是因为我启用了WP Super Cache这个缓存插件,刷新后显示的还是缓存静态文件,没能显示出即时的改变。我把这个插件停用了之后,再在数据库里删了一些垃圾评论,刷新网页,评论数目也马上就有相应的变化了。

Related posts:

  1. 如何快速删除WordPress文章修订版本
  2. 被垃圾评论搞得很郁闷
  3. 如何快速修改wordpress主题

标签: , ,

10 条评论 发表在“如何快速删除垃圾评论”上

  1. [...] update:如何快速删除垃圾评论 分类: Site Development 标签: Akismet, 垃圾评论 评论 (0) Trackbacks (1) 发表评论 Trackback [...]

  2. 也许知道 说:

    用这个WP的插件YAWASP,你到插件里面搜就可以找到安装,防护效果极好。我正在用。它的工作原理是诱骗垃圾机器人。

  3. 也许知道 说:

    最近我发现这个插件不稳定,有时会将正常的留言当作垃圾回复对待。告之一下。

  4. zhihong 说:

    谢谢,好像大部分的防垃圾评论插件都有这个问题,容易错杀无辜。

  5. 唐恩 说:

    挺有用的

  6. 小鱼 说:

    用godady的空间的话,登录后台数据库有点慢啊

  7. wantit 说:

    很清楚的介绍,谢谢了

  8. downtown 说:

    不懂数据库那些东西啊,我照着这篇试试吧

  9. [...] 看来在WordPress里,用插件解决问题才是正道。在数据库里操作,要先用phpadmin登录数据库,总是比较麻烦,不如在WordPress后台里统一管理。而且对于不熟悉数据库和SQL的人来说,用插件是最方便的选择了。受此插件的启发,我觉得“如何快速删除垃圾评论”其实也可以写一个插件来删除,这插件可以自定义垃圾评论的关键字。有哪位高手有兴趣的话可以写写这个删除垃圾评论的插件,如果没有的话我就自己来了,学学怎样开发一个WordPress插件。 [...]

  10. mon 说:

    还是挺麻烦的

留下回复