WordPress禁止非中文垃圾评论的方法(英日俄韩阿泰语)

  • 812

WordPress的垃圾评论实在是太凶猛了,不装AKismet的话,正规的评论和垃圾评论都跑到待审里了,装上吧,又不停的在数据库的wp_commentmeta中写入日志,我的博客每天都要写入千条左右,现在metaid已经到了9万多,前阵子加入了禁止纯英文的评论代码后,垃圾评论少多了,但是还有有部分日语和俄语的垃圾评论,因为日语里有部分的汉字,所以之前的屏蔽就失效了,下面分享下禁止英语、日语、俄语、韩语、阿拉伯语、泰语的反垃圾评论代码
WordPress禁止非中文垃圾评论的方法(英日俄韩阿泰语)

因为我的博客使用的err代码,不过一般都是使用wp_die的,如果你使用我提供的代码出错,把所有的err都改成wp_die就好了

一、屏蔽所有纯英语、日语、俄语、韩语、阿拉伯语、泰语评论

  1. // 禁止全英日俄韩阿泰语评论
  2. function ssdax_comment_all_post( $incoming_comment ) {
  3. $enpattern = '/[一-龥]/u';
  4. $jpattern ='/[ぁ-ん]+|[ァ-ヴ]+/u';
  5. $ruattern ='/[А-я]+/u';
  6. $krattern ='/[갂-줎]+|[줐-쥯]+|[쥱-짛]+|[짞-쪧]+|[쪨-쬊]+|[쬋-쭬]+|[쵡-힝]+/u';
  7. $arattern ='/[؟-ض]+|[ط-ل]+|[م-م]+/u';
  8. $thattern ='/[ก-๛]+/u';
  9. if(!preg_match($enpattern, $incoming_comment['comment_content'])) {
  10. err( "写点汉字吧,博主外语很捉急! Please write some chinese words!" );
  11. }
  12. if(preg_match($jpattern, $incoming_comment['comment_content'])){
  13. err( "日文滚粗!Japanese Get out!日本語出て行け!" );
  14. }
  15. if(preg_match($ruattern, $incoming_comment['comment_content'])){
  16. err( "北方野人讲的话我们不欢迎!Russians, get away!Savage выйти из Русского Севера!" );
  17. }
  18. if(preg_match($krattern, $incoming_comment['comment_content'])){
  19. err( "思密达的世界你永远不懂!Please do not use Korean!하시기 바랍니다 한국 / 한국어 사용하지 마십시오!" );
  20. }
  21. if(preg_match($arattern, $incoming_comment['comment_content'])){
  22. err( "禁止使用阿拉伯语!Please do not use Arabic!!من فضلك لا تستخدم اللغة العربية" );
  23. }
  24. if(preg_match($thattern, $incoming_comment['comment_content'])){
  25. err( "人妖你好,人妖再见!Please do not use Thai!กรุณาอย่าใช้ภาษาไทย!" );
  26. }
  27. return( $incoming_comment );
  28. }
  29. add_filter('preprocess_comment', 'ssdax_comment_all_post');

 

二、屏蔽纯英语评论

  1. // 禁止纯英文评论
  2. function ssdax_comment_post( $incoming_comment ) {
  3. $enpattern = '/[一-龥]/u';
  4. if(!preg_match($enpattern, $incoming_comment['comment_content'])) {
  5. err( "写点汉字吧,博主外语很捉急! Please write some chinese words!" );
  6. }
  7. return( $incoming_comment );
  8. }
  9. add_filter('preprocess_comment', 'ssdax_comment_post');

 

三、屏蔽纯日语评论

  1. // 禁止日文评论
  2. function ssdax_comment_jp_post( $incoming_comment ) {
  3. $jpattern ='/[ぁ-ん]+|[ァ-ヴ]+/u';
  4. if(preg_match($jpattern, $incoming_comment['comment_content'])){
  5. err( "日文滚粗!Japanese Get out!日本語出て行け!" );
  6. }
  7. return( $incoming_comment );
  8. }
  9. add_filter('preprocess_comment', 'ssdax_comment_jp_post');

 

四、屏蔽纯俄语评论

  1. //禁止北方野蛮人留言(俄语)
  2. function ssdax_comment_ru_post( $incoming_comment ) {
  3. $ruattern ='/[А-я]+/u';
  4. if(preg_match($ruattern, $incoming_comment['comment_content'])){
  5. err( "北方野人讲的话我们不欢迎!Russians, get away!Savage выйти из Русского Севера!" );
  6. }
  7. return( $incoming_comment );
  8. }
  9. add_filter('preprocess_comment', 'ssdax_comment_ru_post');

 

五、屏蔽纯韩语/朝鲜语评论

  1. //禁止朝鲜半岛幸福人民留言(朝鲜语/韩语)
  2. function ssdax_comment_kr_post( $incoming_comment ) {
  3. $krattern ='/[갂-줎]+|[줐-쥯]+|[쥱-짛]+|[짞-쪧]+|[쪨-쬊]+|[쬋-쭬]+|[쵡-힝]+/u';
  4. if(preg_match($krattern, $incoming_comment['comment_content'])){
  5. err( "思密达的世界你永远不懂!Please do not use Korean!하시기 바랍니다 한국 / 한국어 사용하지 마십시오!" );
  6. }
  7. return( $incoming_comment );
  8. }
  9. add_filter('preprocess_comment', 'ssdax_comment_kr_post');

 

六、屏蔽纯阿拉伯语评论

  1. //禁止阿拉伯语评论(部分)
  2. function ssdax_comment_ar_post( $incoming_comment ) {
  3. $arattern ='/[؟-ض]+|[ط-ل]+|[م-م]+/u';
  4. if(preg_match($arattern, $incoming_comment['comment_content'])){
  5. err( "禁止使用阿拉伯语!Please do not use Arabic!!من فضلك لا تستخدم اللغة العربية" );
  6. }
  7. return( $incoming_comment );
  8. }
  9. add_filter('preprocess_comment', 'ssdax_comment_ar_post');

 

六、屏蔽纯阿拉伯语评论

  1. //禁止人妖部落留言(泰语)
  2. function ssdax_comment_th_post( $incoming_comment ) {
  3. $thattern ='/[ก-๛]+/u';
  4. if(preg_match($thattern, $incoming_comment['comment_content'])){
  5. err( "人妖你好,人妖再见!Please do not use Thai!กรุณาอย่าใช้ภาษาไทย!" );
  6. }
  7. return( $incoming_comment );
  8. }
  9. add_filter('preprocess_comment', 'ssdax_comment_th_post');

 

代码参考自麦田一根葱

阿斯兰萨拉
评论  8  访客  7  作者  1
    • jiejun
      jiejun MIUI Browser 15 GNU/Linux 0

      好东西感谢博主

      • 赤足踏涧石
        赤足踏涧石 Google Chrome 45 Windows 10 9

        不知道是否好用

        • 布宜诺斯艾利斯
          布宜诺斯艾利斯 Google Chrome 45 Windows 10 9

          不知道是否好用

          • 布宜诺斯艾利斯
            布宜诺斯艾利斯 Google Chrome 45 Windows 10 9

            现在我的只是简单装了个Anti Spam,效果还可以

            • 【AOE博客】阿零
              【AOE博客】阿零 Opera IBIS 12 Windows XP 1

              学习下,现在我的只是简单装了个Anti Spam,效果还可以,以前的垃圾评论多了去了。

                • 阿斯兰萨拉
                  阿斯兰萨拉 CoolNovo 2 Windows 7

                  @ 【AOE博客】阿零 我以前用AKismet一天大概几百条,后来加了个禁止英语的,每天大概有十几二十条的日语的,现在每周大概也就四五条了

                • 微历史
                  微历史 MyIE2 Windows XP 0

                  很有才的垃圾屏蔽 :evil:

                    • 广告狗
                      广告狗 Google Chrome 38 Windows 7 1

                      @ 微历史 路过留名

                  匿名

                  发表评论

                  匿名网友 填写信息

                  :?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: