一个老掉牙的屏蔽评论的代码,本来缙哥哥也不是很在意那些垃圾评论,打不了后台一个插件清理得了,可是最近发现,有些正常的评论也被放到了垃圾评论里,看来Akismet还是会疏忽的,所以毛办法,还得把正常评论捡起来,绕着这么多的垃圾评论着实费劲,前一段时间在网上看到了一个屏蔽非中文评论的代码,心想正好试试,果然使用后效果明显,刚开始还有一些带点中文的垃圾评论,现在垃圾评论基本为0,估计是不想每次都敲点中文字符。
代码如下,直接丢进 functions 文件即可。
//屏蔽全英文评论
function
refused_spam_comments
(
$comment_data
){
$pattern
=
'/[一-龥]/u'
;
if
(!
preg_match
(
$pattern
,
$comment_data
[
'comment_content'
])){
err
(
"You should type some Chinese word (like \"你好\") in your comment to pass the spam-check, thanks for your patience!"
);
}
return
(
$comment_data
);
}
add_filter
(
'preprocess_comment'
,
'refused_spam_comments'
);
那么,我们根据以上代码,进行一下扩展。
屏蔽英文垃圾评论以及日语垃圾评论
//禁止全英文和日文评论
function
v7v3_comment_post
(
$incoming_comment
)
{
$pattern
=
'/[一-龥]/u'
;
$jpattern
=
'/[ぁ-ん]+|[ァ-ヴ]+/u'
;
if
(!
preg_match
(
$pattern
,
$incoming_comment
[
'comment_content'
]))
{
err
(
"写点汉字吧,博主外语很捉急! Please write some chinese words!"
);
}
if
(
preg_match
(
$jpattern
,
$incoming_comment
[
'comment_content'
])){
err
(
"日文滚粗!Japanese Get out!日本語出て行け!"
);
}
return
(
$incoming_comment
);
}
add_filter
(
'preprocess_comment'
,
'v7v3_comment_post'
);
单独屏蔽日语垃圾评论
//单独屏蔽日语垃圾评论 function v7v3_comment_jp_post( $incoming_comment ) { $jpattern ='/[ぁ-ん]+|[ァ-ヴ]+/u'; if(preg_match($jpattern, $incoming_comment['comment_content'])){ err( "日文滚粗!Japanese Get out!日本語出て行け!" ); } return( $incoming_comment ); } add_filter('preprocess_comment', 'v7v3_comment_jp_post');
屏蔽俄语垃圾评论
//禁止北方野蛮人留言(俄语) function v7v3_comment_ru_post( $incoming_comment ) { $ruattern ='/[А-я]+/u'; if(preg_match($ruattern, $incoming_comment['comment_content'])){ err( "北方野人讲的话我们不欢迎!Russians, get away!Savage выйти из Русского Севера!" ); } return( $incoming_comment ); } add_filter('preprocess_comment', 'v7v3_comment_ru_post');
屏蔽阿拉伯语垃圾评论
//禁止真主阿拉留言(阿拉伯语,部分) function v7v3_comment_ar_post( $incoming_comment ) { $arattern ='/[؟-ض]+|[ط-ل]+|[م-م]+/u'; if(preg_match($arattern, $incoming_comment['comment_content'])){ err( "不要用阿拉伯语!Please do not use Arabic!!من فضلك لا تستخدم اللغة العربية" ); } return( $incoming_comment ); } add_filter('preprocess_comment', 'v7v3_comment_ar_post');
屏蔽泰语垃圾评论
//禁止人妖部落留言(泰语)
function
v7v3_comment_th_post
(
$incoming_comment
)
{
$thattern
=
'/[ก-๛]+/u'
;
if
(
preg_match
(
$thattern
,
$incoming_comment
[
'comment_content'
])){
err
(
"人妖你好,人妖再见!Please do not use Thai!กรุณาอย่าใช้ภาษาไทย!"
);
}
return
(
$incoming_comment
);
}
add_filter
(
'preprocess_comment'
,
'v7v3_comment_th_post'
);
老子全部都要
//禁止全英文和日文评论
function
v7v3_comment_post
(
$incoming_comment
)
{
$pattern
=
'/[一-龥]/u'
;
$jpattern
=
'/[ぁ-ん]+|[ァ-ヴ]+/u'
;
$ruattern
=
'/[А-я]+/u'
;
$arattern
=
'/[؟-ض]+|[ط-ل]+|[م-م]+/u'
;
$thattern
=
'/[ก-๛]+/u'
;
if
(!
preg_match
(
$pattern
,
$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
(
$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'
,
'v7v3_comment_post'
);
卧槽,这些根本无法满足老子的需求啊。那缙哥哥只能说一句,你关闭评论吧!