WordPress 评论系统是用来鼓励大家对某篇文章进行交流和讨论的,这是一个很好的设计,但是有时候我们发现,评论中会有一些完全没有价值的内容,比如我们在论坛中经常见到的“顶”,“赞”,这些,而有些则是从其他地方复制过来的一段内容。这对增加这篇文章的价值毫无帮助,我们可以通过显示评论中文字的数量来限制这些行为,更好的规范 WordPress 文章的评论内容。
通过 preprocess_comment 过滤器显示评论中的文字数量
WordPress 提供了preprocess_comment
这个过滤器,来帮助我们在把评论添加到数据库前对评论内容进行一些过滤或处理。用户点击了提交评论。我们可以在这个时候对评论字数进行判断,如果达不到我们的要求,我们可以返回一些错误信息给用户。
add_filter( 'preprocess_comment', 'wpb_preprocess_comment' );
function wpb_preprocess_comment($comment) {
if ( strlen( $comment['comment_content'] ) > 500 ) {
wp_die('抱歉,评论太长了,请不要超过500字。');
}
if ( strlen( $comment['comment_content'] ) < 20 ) {
wp_die('抱歉,评论太短了,请不要少于20个字。');
}
return $comment;
}
很多垃圾评论都是简单的发表一个网址,以期望这种行为能为自己的网站带来一些流量。我们可以稍微把评论的最小字数调高一点,在一定程度上也能防止垃圾评论的问题。