目录
前言
WordPress站点经常受到垃圾评论攻击,此类评论通常是由英文生成,不包含中文,为了有效过滤垃圾评论,可在主题的模板函数文件(functions.php)添加几行代码,只允许提交包含中文的评论,操作简单,且不需要安装额外插件。

操作步骤
一、按照下图,打开主题文件编辑器,点击模板函数,代码粘贴到文件中,最后点击更新文件即可。
// 发表评论只允许包含中文的评论
function block_non_chinese_comments($commentdata) {
$comment_content = $commentdata['comment_content'];
// 使用Unicode属性匹配中文字符
if (!preg_match("/\p{Han}/u", $comment_content)) {
// 如果不包含中文字符,终止提交并显示错误信息
wp_die('<p style="text-align:center;font-size:18px;margin-top:50px;">错误:评论内容不合法!<br>Error: Comment content is illegal!</p>',
'Error:',
array('response' => 403)
);
}
// 如果包含中文,则允许评论继续提交
return $commentdata;
}
add_filter('preprocess_comment', 'block_non_chinese_comments');

二、提交非中文评论后的效果。













