本方法主要解决评论最少和最多字数验证,是否包含中文验证,您可以根据自己的需求自行修改优化。
使用方法
将下放代码复制到主题文件下的function.php文件内即可
代码
/****************************************************************************************************************************************************************************************************************************************************************************************
* Start 设定评论字数限制
*/
/* 设定评论字数限制 */
function set_comments_length($commentdata) {
$minCommentlength = 8; //最少字数限制
$maxCommentlength = 1000; //最多字数限制
$pointCommentlength = mb_strlen($commentdata['comment_content'],'UTF8'); //mb_strlen 1个中文字符当作1个长度
if ($pointCommentlength < $minCommentlength){ header("Content-type: text/html; charset=utf-8"); wp_die('抱歉,您的评论字数过少,请至少输入' . $minCommentlength .'个字(目前字数:'. $pointCommentlength .'个字,请勿灌水发广告!严重者有封号风险!)'); exit; } if ($pointCommentlength > $maxCommentlength){
header("Content-type: text/html; charset=utf-8");
wp_die('对不起,您的评论字数过多,请少于' . $maxCommentlength .'个字(目前字数:'. $pointCommentlength .'个字,请勿灌水发广告!严重者有封号风险!)');
exit;
}
//必须包含中文验证
$pattern = '/[一-龥]/u';
if(!preg_match($pattern,$commentdata['comment_content'])) {
wp_die('评论必须含中文!');
exit;
}
return $commentdata;
}
add_filter('preprocess_comment', 'set_comments_length');
//END 设定评论字数限制