WordPress无插件实现防止垃圾评论问题 - 禁止全英文和链接评论
ssr
撰写于 2022年 02月 26 日

WordPress作为较为强大的CMS程序,功能相当丰富,个人网站、博客、企业网站,甚至中型内容管理系统都可以用WP程序。不过,我们用户会发现一个问题,随着网站的推进,各种人为、非人为的评论信息特别的多,如果不加以处理还是比较麻烦的。一般,我们可以使用WordPress垃圾评论插件实现这些功能。
比如WordPress垃圾评论插件常用的有:SI CAPTCHA Anti-Spam、Akismet,但是本着少用插件的原则,我们可以从一些小的代码实现禁止一些特定的评论问题。比如我们发现大部分群发垃圾评论会带有链接,以及一些英文群发软件内容全是英文,我们可以特定的限制。

第一、需要内容带有中文、不能是日文


// 评论中需要有中文 itbulu.com
function wp_refused_spam_comments($comment_data) {<br> $pattern = '/[一-龥]/u';
$jpattern = '/[ぁ-ん]+|[ァ-ヴ]+/u';<br> if (!preg_match($pattern, $comment_data['comment_content'])) {<br> err(__('评论中需要有一个汉字!'));<br> }<br> if (preg_match($jpattern, $comment_data['comment_content'])) {<br> err(__('不能有日文!'));<br> }<br> return ($comment_data);
}
add_filter('preprocess_comment', 'wp_refused_spam_comments');

禁止全英文或者日文的评论,可以限制一些全英文发帖机器。
第二、禁止评论内容带有链接

//禁止发链接 itbulu.com
function wp_comment_post( $incoming_comment ) {<br> $http = '/[href="|rel="nofollow"|http://|</a>]/u';
if(preg_match($http, $incoming_comment['comment_content'])) {
err( "禁止发链接地址!" );
}
return( $incoming_comment );
}
add_filter('preprocess_comment', 'wp_comment_post');

根据需要,将两处代码添加到当前主题Functions.php中,可以在一定程度上比默认评论垃圾评论好一些。老蒋在后面再整理一些其他关于评论限制的文章。

WordPress无插件实现防止垃圾评论问题 - 禁止全英文和链接评论

WordPress作为较为强大的CMS程序,功能相当丰富,个人网站、博客、企业网站,甚至中型内容管理系统都可以用WP程序。不过,我们用户会发现一个问题,随着网站的推进,各种人为、非人为的评论信息特别的多,如果不加以处理还是比较麻烦的。一般,我们可以使用WordPress垃圾评论插件实现这些功能。
比如WordPress垃圾评论插件常用的有:SI CAPTCHA Anti-Spam、Akismet,但是本着少用插件的原则,我们可以从一些小的代码实现禁止一些特定的评论问题。比如我们发现大部分群发垃圾评论会带有链接,以及一些英文群发软件内容全是英文,我们可以特定的限制。

第一、需要内容带有中文、不能是日文


// 评论中需要有中文 itbulu.com
function wp_refused_spam_comments($comment_data) {<br> $pattern = '/[一-龥]/u';
$jpattern = '/[ぁ-ん]+|[ァ-ヴ]+/u';<br> if (!preg_match($pattern, $comment_data['comment_content'])) {<br> err(__('评论中需要有一个汉字!'));<br> }<br> if (preg_match($jpattern, $comment_data['comment_content'])) {<br> err(__('不能有日文!'));<br> }<br> return ($comment_data);
}
add_filter('preprocess_comment', 'wp_refused_spam_comments');

禁止全英文或者日文的评论,可以限制一些全英文发帖机器。
第二、禁止评论内容带有链接

//禁止发链接 itbulu.com
function wp_comment_post( $incoming_comment ) {<br> $http = '/[href="|rel="nofollow"|http://|</a>]/u';
if(preg_match($http, $incoming_comment['comment_content'])) {
err( "禁止发链接地址!" );
}
return( $incoming_comment );
}
add_filter('preprocess_comment', 'wp_comment_post');

根据需要,将两处代码添加到当前主题Functions.php中,可以在一定程度上比默认评论垃圾评论好一些。老蒋在后面再整理一些其他关于评论限制的文章。

赞 (0)

猜您想看

评论区(暂无评论)

这里空空如也,快来评论吧~

我要评论