wordpress博客网站一直倍受垃圾评论侵扰,而且基本上都是英文和网址,真的是让人不胜其烦!每个站长都会为自己的网站搭配自己喜欢的垃圾评论拦截的方案。
如:wordpress插件,Some Chinese Please插件就可以拦截不带中文字的评论,用起来很不错,而且不写入数据库,可以有效地减少spam对服务器的额外负担,其实我们完全没有必要使用插件,直接使用代码就可以实现。
ps:过多的插件也会造成wordpress的运行缓慢。
请把下面所需的代码复制到当前主题的 funtions.php 文件最后一个 ?>; 的前面即可。
// 禁止全英日俄韩阿泰语评论 function ssdax_comment_all_post( $incoming_comment ) { $enpattern = '/[一-龥]/u'; $jpattern ='/[ぁ-ん]+|[ァ-ヴ]+/u'; $ruattern ='/[А-я]+/u'; $krattern ='/[갂-줎]+|[줐-쥯]+|[쥱-짛]+|[짞-쪧]+|[쪨-쬊]+|[쬋-쭬]+|[쵡-힝]+/u'; $arattern ='/[؟-ض]+|[ط-ل]+|[م-م]+/u'; $thattern ='/[ก-๛]+/u'; if(!preg_match($enpattern, $incoming_comment['comment_content'])) { err( "写点汉字吧,博主外语很捉急! Please write some chinese words!" ); } if(preg_match($jpattern, $incoming_comment['comment_content'])){ err( "日文滚粗!Japanese Get out!日本語出て行け!" ); } if(preg_match($ruattern, $incoming_comment['comment_content'])){ err( "北方野人讲的话我们不欢迎!Russians, get away!Savage выйти из Русского Севера!" ); } if(preg_match($krattern, $incoming_comment['comment_content'])){ err( "思密达的世界你永远不懂!Please do not use Korean!하시기 바랍니다 한국 / 한국어 사용하지 마십시오!" ); } if(preg_match($arattern, $incoming_comment['comment_content'])){ err( "禁止使用阿拉伯语!Please do not use Arabic!!من فضلك لا تستخدم اللغة العربية" ); } if(preg_match($thattern, $incoming_comment['comment_content'])){ err( "人妖你好,人妖再见!Please do not use Thai!กรุณาอย่าใช้ภาษาไทย!" ); } return( $incoming_comment ); } add_filter('preprocess_comment', 'ssdax_comment_all_post');
还有就是那些使用技术手段,比如GET、POST等方式直接评论而不经过前台表单的垃圾评论我们就无能为力了,其它什么验证码、滑动解锁等等面对这些技术手段全部无用,只有屏蔽IP才能解决这个问题。
欢迎访问秀主题博客,分享简单实用WP教程