WordPress 用户的 user_login、user_nicename、display_name 和 nickname 有什么区别
WordPress 中有一堆的用户名相关的字段:
user_login
- 用户名user_nicename
- 别名first_name
- 名字last_name
- 姓氏nickname
- 昵称display_name
-公开显示名
下面我们讲解一下这些字段的分别什么意思。
user_login
就是用户注册时输入的用户名,WordPress 默认不支持中文名,所以这里一般都是英文加数字中划线和下划线,每次登录后台使用的也是这个字段。
user_nicename
user_nicename
也可以说是 user 的 slug, 最长 50 个字符,它用于作者的文章列表链接,比如 https://blog.wpjam.com/author/superdenis/
。
默认情况下,在用户注册的时候,直接过滤掉 user_login
一些不适合在链接中生成的字符,并且全部转成小写字母生成。
所以大部分 WordPress 用户的 user_nicename
和 user_login
是一样的,这样通过查看某个作者的文章列表链接,就能猜到他的登录账号 user_login
,然后就可以暴力破解。
而 user_login
是不可以修改的,而 WordPress 后台也没有提供修改的 user_nicename
的地方,所以这一点比较坑。
WPJAM 的 用户管理插件 已经支持在后台修改 user_nicename
。
nickname
昵称,目前唯一用途是,在后台输入一个昵称,然后可以让你在选择 display_name
(公开显示的名称) 的时候,多一个选择。
另外 nickname
是存储在 user_meta
里面的。
display_name
用户公开显示的名字,在文章详情页,要显示文章作者名字时,一般可以使用模板函数 the_author()
来调用显示,所以一般看到作者的名字就是这个。
display_name
可以在后台设置,WordPress 会让你从「昵称」,「user_login」,以及「姓」和「名」的四种组合中选择一个。
WPJAM 用户管理插件的优化
那么多的名字,所以个人感觉,最好合并一下,所以 WPJAM 用户管理插件提供了下面的设置选项:
屏蔽姓名设置:屏蔽了姓氏和名字设置,简化后台个人资料界面设置。
显示名称设置:取消显示名称选择器,直接使用昵称作为显示名称。
另外我们还支持提供了开启了别名设置,让用户以编辑别名(user_nicename
),这样作者文章链接就不会出现用户名,防止用户名暴露。
如果用户没有修改过别名(user_nicename
),为了进一步防止用户名暴露,WPJAM 用户管理插件还提供了隐藏登录名设置的选项。
所以改进之后最终的用户界面如下所示:
点击查看 WPJAM 用户管理插件的详细介绍。