2017年9月16日

wordpress评论必须包含中文

作者 wonse

前段时间换了新主题,很简洁,功能也很简单,但后台没有防垃圾评论功能,我又不想安装插件,所以隔段时间就得清除垃圾评论。

一直注意到垃圾评论主要是英文或日文,所以只要禁止纯英文和日文留言就能防止垃圾评论了。试了几组代码,还是下面的最好用:

//屏蔽纯英文评论和纯日文
function refused_english_comments($incoming_comment) {
	$pattern = '/[一-龥]/u';
	// 禁止全英文评论
	if(!preg_match($pattern, $incoming_comment['comment_content'])) {
		wp_die( "您的评论中必须包含汉字!" );
	}
	$pattern = '/[あ-んア-ン]/u';
	// 禁止日文评论
	if(preg_match($pattern, $incoming_comment['comment_content'])) {
		wp_die( "评论禁止包含日文!" );
	}
	return( $incoming_comment );
}
add_filter('preprocess_comment', 'refused_english_comments');

上述代码添加到主题下的functions.php文件即可。