• 开启全站HTTPS。2017-04-29
  • 本站为非盈利性站点,所得收入全部用于网站服务器及其他费用。2015-10-15
  •    2年前 (2016-02-13)  WordPress教程 |   抢沙发  27 
    文章评分 0 次,平均分 0.0

    使用WordPress建站的朋友应该都会遇到一个问题,那就是大量的垃圾评论。不管你是新站还是老站都一样,今天君子不器就为大家推荐几种对付这些垃圾评论的方法。当然了,若是你已经使用了评论插件之类的东西,那么就不必要看此文了,因为本文是针对WordPress默认评论,只适合那些想通过纯代码的方式解决WordPress垃圾评论的站长朋友。

    方案一:禁止评论中出现超链接

    在WordPress中,很多垃圾评论甚至不需要去自习看内容,只需要瞄一眼就能确定是垃圾评论,因为这些评论一般都带有大量的超链接或者全是英文日文等。因此我们就可以根据这些评论的特点通过代码实现禁止其发表。

    1. function lianyue_comment_post( $incoming_comment ) {
    2. $http = '/[<|=|.|友|夜|KTV|ッ|の|ン|優|業|グ|貿|]/u';
    3. if(preg_match($http, $incoming_comment['comment_content'])) {
    4. wp_die( "发贴机 哥 屋 恩!" );
    5. }
    6. return( $incoming_comment );
    7. }
    8. add_filter('preprocess_comment', 'lianyue_comment_post');

    方案二:通过评论中必须包含中文的方式禁止全英文评论

    在使用WordPress的过程中,若是你开启了网站的注册功能,那么你就会发现你网站要不了多久就会多出一堆全英文的用户名,这些都是一些国外的广告机器人注册用来发广告的,因此我们很有必要禁止掉这些全英文的评论。

    1. function ruikeedu_com_comment_post( $incoming_comment ) {
    2. $pattern = '/[一-龥]/u';
    3. // 禁止全英文评论
    4. if(!preg_match($pattern, $incoming_comment['comment_content'])) {
    5. wp_die( "您的评论中必须包含汉字,否则将被视为发贴机!" );
    6. }
    7. return( $incoming_comment );
    8. }
    9. add_filter('preprocess_comment', 'ruikeedu_com_comment_post');

    方案三:评论中必须包含中文且不得出现如超链接之类的指定字符

    若是你想要同时使用两种方式又觉得贴两份代码麻烦的话,那么请直接复制下面二合一代码。使用了下面的代码后就不要再使用方案一和方案二了。

    1. //评论中必须包含中文且不得出现如超链接之类的指定字符
    2. function ruikeedu_com_comment_post( $incoming_comment ) {
    3. $pattern = '/[一-龥]/u';
    4. $http = '/[<|=|.|友|夜|KTV|ッ|の|ン|優|業|グ|貿|]/u';
    5. // 禁止全英文评论
    6. if(!preg_match($pattern, $incoming_comment['comment_content'])) {
    7. wp_die( "写点汉字吧,博主外语很捉急!You should type some Chinese word!" );
    8. }elseif(preg_match($http, $incoming_comment['comment_content'])) {
    9. wp_die( "不好意思,您的评论违反本站评论规则!" );
    10. }
    11. return( $incoming_comment );
    12. }
    13. add_filter('preprocess_comment', 'ruikeedu_com_comment_post');

    方案四:屏蔽评论中的指定关键词,如:Email、Url、Ip等

    1. //屏蔽评论中的指定关键词,如:email、url、ip等
    2. function ruikeedu_com_fuckyou($comment) {
    3. if (wp_blacklist_check($comment['comment_author'], $comment['comment_author_email'], $comment['comment_author_url'], $comment['comment_content'], $comment['comment_author_IP'], $comment['comment_agent'])) {
    4. header("Content-type: text/html; charset=utf-8");
    5. err(__('不好意思,您的评论违反本站评论规则'));
    6. } else {
    7. return $comment;
    8. }
    9. }
    10. add_filter('preprocess_comment', 'ruikeedu_com_fuckyou');

    方案五:屏蔽长连接评论

    1. function ruikeedu_com_fuckyou_spamcheck($approved, $commentdata) {
    2. return (strlen($commentdata['comment_author_url']) > 50) ?
    3. 'spam' : $approved;
    4. }
    5. add_filter('pre_comment_approved', 'ruikeedu_com_fuckyou_spamcheck', 99, 2);

    方案六:屏蔽昵称,评论内容带链接的评论

    1. function ruikeedu_com_fuckyou_link($comment_data) {
    2. $links = '/http:\/\/|https:\/\/|www\./u';
    3. if (preg_match($links, $comment_data['comment_author']) || preg_match($links, $comment_data['comment_content'])) {
    4. err(__('在昵称和评论里面是不准发链接滴.'));
    5. }
    6. return ($comment_data);
    7. }
    8. add_filter('preprocess_comment', 'ruikeedu_com_fuckyou_link');
     

    除特别注明外,本站所有文章均为小浩博客原创,转载请注明出处来自https://www.xhsay.com/spam-filter.html

    关于
    小浩博客(www.xhsay.com)是由Tovey建立的个人站点,主要致力于整合并分享各种互联网及网站建设的资源。

    发表评论

    表情 格式

    暂无评论

    切换注册

    登录

    忘记密码 ?

    您也可以使用第三方帐号快捷登录

    切换登录

    注册