A-A+

wordpress用户注册不能包含非法关键词

2015年01月07日 编程技术 暂无评论

在wordpress中,我们可以设置评论的黑名单词语,而如果当我们站点流量越来越多的时候,需要开放用户进行注册,如何去屏蔽用户名的非法关键词呢,这里将评论的黑名单同样应用于用户的注册上面,下面小虎博客来教大家 wordpress 中如何屏蔽非法关键词。

在当前主题 functions.php 文件中加入如下的代码:

[code lang="php"]
function blacklist_check($str){
$moderation_keys = trim(get_option('moderation_keys'));
$blacklist_keys = trim(get_option('blacklist_keys'));

$keys = $moderation_keys ."\n".$blacklist_keys;

$words = explode("\n", $keys );

foreach ( (array) $words as $word) {
$word = trim($word);

if ( empty($word) )
continue;

$word = preg_quote($word, '#');

$pattern = "#$word#i";
if ( preg_match($pattern, $str) ) return true;
}

return false;
}

add_filter( 'sanitize_user', 'sanitize_user',3,3);
function v7v3_sanitize_user($username, $raw_username, $strict){
if(v7v3_blacklist_check($username)){
$username = '';
}

return $username;
}
[/code]

这样用户注册就可以和评论一样可以共用所屏蔽掉的评论黑名单了。

标签:

给我留言