WordPress 不用插件阻挡垃圾评论

WordPress网站如何有效阻挡垃圾评论?这些评论大多数是通过软件扫描你的网站,来进行批量提交评论的。无用的评论积少成多会造成垃圾数据堆积,如果不及时处理,会直接拖慢你的网站加载速度。

有很多办法可以避免这一情况,你可以使用WordPress官方的默认插件来阻止垃圾评论,例如:Akismet垃圾评论防护,或者你也可以像我一样,使用代码的方式来屏蔽。

不使用插件的好处

减少插件使用数量,让Word Press网站响应速度更快,下面的方法不适用于外贸网站。

垃圾评论的重灾区

着手解决

将以下代码复制添加到当前主题(或子主题)根目录下:functions.php 文件中的(第一个<?php 标签之后)

// 评论中需要有中文 
function wp_refused_spam_comments($comment_data) {
$pattern = '/[一-龥]/u';
$jpattern = '/[ぁ-ん]+|[ァ-ヴ]+/u';
if (!preg_match($pattern, $comment_data['comment_content'])) {

	 wp_die( '<pre>评论中需要有一个汉字</pre>' );
}
if (preg_match($jpattern, $comment_data['comment_content'])) {

		 wp_die( '<pre>不能有日文</pre>' );
}
return ($comment_data);
}
add_filter('preprocess_comment', 'wp_refused_spam_comments');

//评论中禁止发链接
function wp_comment_post( $incoming_comment ) {
$http = '/[href="|rel="nofollow"|http://|</a>]/u';
if(preg_match($http, $incoming_comment['comment_content'])) {

	wp_die( '<pre>禁止发链接地址</pre>' );
}
return( $incoming_comment );
}
add_filter('preprocess_comment', 'wp_comment_post');

保存即可,大功告成。