微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Wordpress 注册表错误:用户名只能包含字母、数字、- 和 @

如何解决Wordpress 注册表错误:用户名只能包含字母、数字、- 和 @

您好朋友和编码专家;

我使用 wordpressbuddpress 插件作为用户帐户。但是注册用户名出现错误

Usernames can only contain letters,numbers,- and @.

例如: Rustu (OK) / Rüştü (Not OK)

可以为土耳其语字符 (utf-8) 添加过滤器,以便能够在用户名中使用 'I ğ ü' 等...

非常感谢您的帮助。

解决方法

将这段代码添加到您主题的functions.php 中,或者您可以根据需要在插件中使用它。这将使用户能够使用非 ansi 字符进行注册。

add_filter( 'sanitize_user','sanitize_user_username',3,3);

function sanitize_user_username($username,$raw_username,$strict) {
    $username = $raw_username;
    $username = strip_tags($username);
    $username = preg_replace('|%([a-fA-F0-9][a-fA-F0-9])|','',$username);
    $username = preg_replace('/&.+?;/',$username);

    if ( $strict )
        $username = preg_replace('|[^a-z0-9 _.\-@\x80-\xFF]|i',$username);
    $username = preg_replace('|\s+|',' ',$username);

    return $username;
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。