你如果使用WordPress建站一段时间后,登陆后台久会看到大量的呆审核评论,不要高兴,点进去看下,估计大部分是英文跟日文,这些评论都是由机器发出的而且都带了大量的链接。如下图所示:
本站前面介绍了过滤垃圾评论的方法:
- 1、wordpress屏蔽垃圾评论插件:Akismet
- 2、wordpress过滤垃圾评论代码
- 3、wordpress屏蔽大量英文垃圾评论插件:Some Chinese Please
即便做好了以上三步,还是无法从根本上解决垃圾评论的问题。今天wordpress教程网就为大家介绍如何从根源上去解决垃圾评论的问题,由于垃圾评论都是通过机器脚本发送对应的我们wordpress的评论提交文件为wp-comments-post.php,该文件位于站点根目录下,所以我们只要修改默认的评论文件名即可,如我改为my-wp-comments-post.php,当机器或脚本再提交垃圾评论后就无法找到该文件,成功屏蔽了垃圾评论。从应用效果来看,这个是目前最好屏蔽垃圾评论的方法。完整步骤如下:
- 1、修改站点目录下wp-comments-post.php名为my-wp-comments-post.php。
- 2、修改当前使用主题的comments.PHP文件提交的评论地址为:my-wp-comments-post.php
- 3、将以下过滤代码添加到你主题的functions.php文件中
function check_comment_data( $commnet_data ) { $pattern = "/[\x7f-\xff]/"; // 禁止非中文 if(!preg_match($pattern, $commnet_data['comment_content'])) { $str = "您的评论中必须包含汉字!"; //异步提交评论表单 wp_die ( __( $str ) ); //wordpress默认错误提示页面 //wp_die( $str ); } // 禁止含有链接的评论 if(strpos($commnet_data['comment_content'],'Http://') !== false || strpos($commnet_data['comment_content'],'<a') !== false) { $str = "您的评论中不能包含链接!"; //异步提交评论表单 wp_die ( __( $str ) ); } return $commnet_data; } add_filter('preprocess_comment', 'check_comment_data');
注:wordpress升级时重复以上步骤。