Jun252016
WordPress博客通过限制评论字数防止垃圾评论骚扰
WordPress博客防垃圾评论技巧:通过限制评论字数防止垃圾评论骚扰。
俗话说,防的了日文垃圾评论,防的了英文垃圾评论,防的了带链接的垃圾评论,就是防不了最普通的中文垃圾评论,怎么办?
垃圾站博主最近发现一些群发的中文垃圾评论都是事先采集好一些小说片段后者笑话片段然后带上网址批量群发到wordpress上,对于这种评论关键词黑名单就很难屏蔽住了,不过通过观察可以看出这类评论一般都是长篇大论的垃圾评论,所以可以通过限制评论的字数来达到屏蔽垃圾评论的效果!
代码如下,添加到当前主题的 functions.php 中,注意修改最少字数限制和最多字数限制:
//评论字数限制 function lajiz_comment_length( $commentdata ) { $minCommentlength = 10; //最少字数限制 $maxCommentlength = 40; //最多字数限制 $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 .'个字)<a href="javascript:history.go(-1);">返回文章页</a> '); exit; } if ( $pointCommentlength > $maxCommentlength ) { header("Content-type: text/html; charset=utf-8"); wp_die(' 抱歉,您的评论太长了,请少于' . $maxCommentlength .'个字(已输入'. $pointCommentlength .'个字)<a href="javascript:history.go(-1);">返回文章页</a> '); exit; } return $commentdata; } add_filter( 'preprocess_comment', 'lajiz_comment_length' );
效果图如下:
结合关键词屏蔽,IP地址屏蔽,非中文屏蔽垃圾评论等措施后,添加了字数限制屏蔽手段,垃圾评论从最多的一天上千条到现在几乎没有!不过防垃圾评论任重道远,他们也会升级变换!到时候博主们再发挥自己的才能屏蔽垃圾评论吧!
测试时如果出现wp模板错位现象,请将上述代码中的wp_die更改为err即可。代码如下:
//评论字数限制 function lajiz_comment_length( $commentdata ) { $minCommentlength = 10; //最少字数限制 $maxCommentlength = 40; //最多字数限制 $pointCommentlength = mb_strlen($commentdata['comment_content'],'UTF8'); //mb_strlen 1个中文字符当作1个长度 if ( $pointCommentlength < $minCommentlength ) { header("Content-type: text/html; charset=utf-8"); err(' 抱歉,您的评论太短了,请至少输入' . $minCommentlength .'个字(已输入'. $pointCommentlength .'个字)<a href="javascript:history.go(-1);">返回文章页</a> '); exit; } if ( $pointCommentlength > $maxCommentlength ) { header("Content-type: text/html; charset=utf-8"); err(' 抱歉,您的评论太长了,请少于' . $maxCommentlength .'个字(已输入'. $pointCommentlength .'个字)<a href="javascript:history.go(-1);">返回文章页</a> '); exit; } return $commentdata; } add_filter( 'preprocess_comment', 'lajiz_comment_length' );
【上一篇】WordPress防垃圾评论:禁止黑名单中的评论提交到数据库
【下一篇】Linux安全狗运行sdui命令后返回Error! Your terminal’s size is too small!
【下一篇】Linux安全狗运行sdui命令后返回Error! Your terminal’s size is too small!
WordPress博客通过限制评论字数防止垃圾评论骚扰:等您坐沙发呢!
发表评论
