WordPress限制评论最少字数和最大字数

发布于 2020-05-20  129 次阅读


随着网站收录增多,总会有人留一些无关紧要的评论。总会有什么“文章很好” “学习了”之类的话,再加上一些神奇的id和链接。无论评论者是为了引流也好,增加外链也罢,但是这是我的地盘,我不想看到这些非正常交流的评论留言。一个个删除显然不太高效,那么直接拦截如何?

WordPress限制评论最少字数和最大字数:

add_filter( 'preprocess_comment', 'minimal_comment_length' );
function minimal_comment_length( $commentdata ) {
$minimalCommentLength = 40;
if ( strlen( trim( $commentdata['comment_content'] ) ) < $minimalCommentLength )
{
wp_die( '抱歉,您的评论太短了,请至少输入 ' . $minimalCommentLength . ' 个字!' );
}
return $commentdata;
}
/*
* WordPress控制文章评论最少字数
*/
function lxtx_set_comments_length($commentdata) {
$minCommentlength = 100; //最少字數限制,建议设置为5-10个字
$maxCommentlength = 2200; //最多字數限制,建议设置为150-200个字
$pointCommentlength = mb_strlen($commentdata['comment_content'],'UTF8'); //mb_strlen 一个中文字符当做一个长度
if ( ($pointCommentlength < $minCommentlength) && !is_user_logged_in() ){
err('抱歉!您说的内容太少了,请给我讲个' . $minCommentlength .'个字的笑话(目前字数:'. $pointCommentlength .')【登录后无此限制】');
exit;
}
if ( ($pointCommentlength > $maxCommentlength) && !is_user_logged_in() ){
err('对不起,你的文采太好了,你的笑话太长了,我只要' . $maxCommentlength .'个字的笑话!(目前字数:'. $pointCommentlength .')【登录后无此限制】');
exit;
}
return $commentdata;
}
add_filter('preprocess_comment', 'lxtx_set_comments_length');

愿此生尽兴 赤诚善良