网站地图    收藏   

主页 > 后端 > wordpress教程 >

wordpress中文用户名登录(用户名不能用中文) - Wo

来源:自学PHP网    时间:2014-11-28 23:42 作者: 阅读:

[导读] wordpress用户名默认是不支持中文了更别说中文用户名登录了,昨天看到一个朋友解决了wordpress中文用户名登录这个问题,下面我来总结一下 wordpress不能注册中文用户名,我们可以通过做如下...

wordpress中文用户名登录(用户名不能用中文)

wordpress用户名默认是不支持中文了更别说中文用户名登录了,昨天看到一个朋友解决了wordpress中文用户名登录这个问题,下面我来总结一下.

wordpress不能注册中文用户名

我们可以通过做如下的修改来实现让wordpress允许使用中文用户名登录:

1、打开wp-includes/formatting.php文件

2、找到

function sanitize_user( $username, $strict = false ) {

3、在紧接着下一行增加

$strict = false;

通过简单的三部曲即可实现该功能,原理也很简单,强制使$strict = false,这样wordpress注册或修改用户名时就不会对用户名字符进行严格的处理,中文用户名可以正常使用。

1.安全性问题:如果任何字符串都可以注册为用户名,是否会对自己的网站构成威胁?

2.升级后覆盖问题:如果你升级wordpress,wp-includes/formatting.php文件会被升级文件覆盖,你需要重新修改这个地方,否则新的用户可能无法再使用中文用户名,而原本的中文用户名可能也会遇到修改信息、登录等麻烦。

另一种解决办法

wordpress博客默认是不支持注册中文用户名的,无论是用户前台注册,还是你在后台添加,只要包含了中文,他就会提示“此用户名包含无效字符”,解决这类问题无非是修改代码或是使用插件。

修改代码打开wp-includes目录下的formatting.php文件,搜索

“function sanitize_user($username, $strict = false)”

在其下面增加代码

  1. $strict = false;” 
  2. function sanitize_user( $username$strict = false )  
  3.     $strict = false;//解决无法注册中文用户名问题 
  4.     $raw_username = $username
  5.     $username = wp_strip_all_tags( $username ); 
  6.     $username = remove_accents( $username ); 

修改代码解决问题的缺点是,每次WordPress升级之后,需要再次操作一遍,现在我们就可以实现中文登录了.

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论