WordPress 网站注册用户屏蔽非法关键词用户名

发布于 2018-09-11 字数1377 浏览 988 评论 0

网站开放用户注册,可以很大程度上留住用户,尤其是针对一些小的站点,如果有一群忠实的用户,那么让他们注册网站用户,给他们一些好处,这样也能达到口碑宣传的效果。

在天朝有很多东西是被屏蔽的,开放了用户注册当然也会吸引很多非法的用户,比如做 SEO 优化的人,注册用户名包含一些敏感关键词,这对网站也是一种伤害,所以做好敏感关键的屏蔽就非常重要,下面就给大家分享一个 WordPress 网站注册用户屏蔽非法关键词用户名的方法。

首先在 functions.php 文件中加入以下两段代码:

function uedsc_user_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', 'uedsc_sanitize_user',3,3);
function uedsc_sanitize_user($username, $raw_username, $strict){
    if(uedsc_user_blacklist_check($username)){
        $username = '';
    }
    return $username;
}

然后在 WordPress 后台 > 设置 > 讨论,我们输入「评论审核」和「评论黑名单」关键字,就可以来屏蔽用户使用敏感关键词来注册了。

如果你对这篇文章有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助。

扫码二维码加入Web技术交流群

您暂时不能评论!

管理员开启了需要登录才能够评论,你可以免费注册一个本站的账号。

还没有评论!

目前还没有任何评论,快来抢沙发吧!