建站教程

建站教程

Products

当前位置:首页 > 建站教程 >

Wordpress建站教程:Wordpress网站屏蔽垃圾评论的方法(wordpress无需插件实现拦截无中文留言的方法)

GG网络技术分享 2025-03-18 16:14 1


Wordpress建站教程:Wordpress网站屏蔽垃圾评论的方法

作者:悦然wordpress建站(悦然建站)

(此处已添加小程序,请到今日头条客户端查看)


继续给大家分享wordpress建站教程,本文教大家屏蔽网站垃圾评论。今天分享的教程可能很我企业网站用不上,因为企业网站一般不需要评论,悦然网络工作室帮企业建站时也是会默认禁用评论功能的,这样可以省去很多麻烦。


下面直接分享再做代码:


代码一:评论必须要有中文


下面这个代码主要是针对国内的网站,因为有些人遇到了网站被软件刷出大量评论的情况,而且大多数是英文、日文等,所以下面的代码主要作用就是屏蔽这些垃圾内容。


// 评论必须含中文

function wp_refused_spam_comments($comment_data) {

$pattern = '/[一-龥]/u';

$jpattern = '/[ぁ-ん]+|[ァ-ヴ]+/u';

if (!preg_match($pattern, $comment_data['comment_content'])) {

err(__('评论中需要有一个汉字!'));

}

if (preg_match($jpattern, $comment_data['comment_content'])) {

err(__('不能有日文!'));

}

return ($comment_data);

}

add_filter('preprocess_comment', 'wp_refused_spam_comments');


代码二:禁止评论发链接


了解一点SEO的用户都知道网站外链建设的重要性,所以有些人会在评论中加入外链,或者是广告链接,这对我们自己的网站来说是不太好的,可能被造成权重流失,甚至可能因为这些链接导致网站被处罚。下面的代码功能就是直接屏蔽各种链接的。


//禁止发链接

function wp_comment_post( $incoming_comment ) {

$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文件中就可以了,也可以添加到Code Snippets插件中。

wordpress无需插件实现拦截无中文留言的方法

Some Chinese Please插件可以拦截不带中文字的留言,本博客一直在用效果不错,不写入数据库,可有效地减少spam对服务器的无谓使用,其实可以将插件简化一下,直接用代码实现。

将下面代码加到主题functions模板文件中,效果与使用插件相同。

  1. /* refused spam */
  2. function refused_spam_comments( $comment_data ) {
  3. $pattern = \'/[一-龥]/u\';
  4. if(!preg_match($pattern,$comment_data[\'comment_content\'])) {
  5. wp_die(\'评论必须含中文!\');
  6. }
  7. return( $comment_data );
  8. }
  9. add_filter(\'preprocess_comment\',\'refused_spam_comments\');

wordpress无需插件实现拦截无中文留言的方法 (https://www.wpmee.com/) WordPress使用教程 第1张

注:如果出现无效的情况,请将wp_die替换为err,否则显示错误信息时,会造成模版错位,其它使用ajax评论的主题也可参照修改。

其它一些写入数据库的防spam插件不建议使用, 比如WordPress官方的防垃圾插件Akismet会在数据库中留下大量的信息,增加服务器负担。

针对那些使用技术手段,比如GET、POST等方式不填写前台表单,直接读取后台程序文件的spam,只有屏蔽IP才能缓解疯狗一样的攻势,其它什么验证码、滑动解锁等等都没用。

可以在.htaccess文件中添加:

Order Deny,Allow
Deny from xxx.xxx.xxx.xx
Deny from xxx.xxx.xxx.xx

标签: 小程序

提交需求或反馈

Demand feedback