WordPress 用户的 user_login、user_nicename、display_name 和 nickname 有什么区别

WordPress 中有一堆的用户名相关的字段,比如 user_loginuser_nicenamedisplay_namenickname,还有 first_namelast_name,后面两个是名和姓,比较简单,这里就不说了,重点来讲一下前面这几个的区别。

user_login

就是用户注册时输入的用户名,WordPress 默认不支持中文名,所以这里一般都是英文加数字中划线和下划线,每次登陆后台使用的也是这个字段。

user_nicename

user_nicename 也可以说是 user 的 slug, 最长 50 个字符,它用于作者的文章列表链接,比如 https://blog.wpjam.com/author/superdenis/

默认情况下,在用户注册的时候,直接过滤掉 user_login 一些不适合在链接中生成的字符,并且全部转成小写字母生成。

所以大部分 WordPress 用户的 user_nicenameuser_login 是一样的,这样通过查看某个作者的文章列表链接,就能猜到他的登录账号 user_login,然后就可以暴力破解。

user_login 是不可以在后台修改的,而 WordPress 后台也没有提供修改的 user_nicename 的地方,所以这一点比较坑。

WPJAM 用户管理插件 已经支持在后台修改 user_nicename

display_name

作者显示的名字,在文章详情页,要显示作者名字时,一般可以使用模板函数 the_author() 来调用显示,所以一般看到作者的名字就是这个。

display_name 可以在后台设置,WordPress 会让你从「昵称」,「user_login」,以及「姓」和「名」的四种组合,中选择。

nickname

昵称,目前唯一用途是,在后台输入一个昵称,然后可以让你在选择 display_name 的时候,多一个选择,厄。

另外 nickname 是存储在 user_meta 里面的。

那么多的名字,所以个人感觉,最好合并一下:

  • 后台可以设置 user_nicename,防止 user_login 暴露。
  • nickname 直接和 display_name 合并,用户设置成昵称,显示的名字就是成什么名字。

©我爱水煮鱼,本站推荐使用的主机:阿里云,国外主机建议使用BlueHost

本站长期承接 WordPress 优化建站业务,要求很高,有兴趣请联系微信:「chenduopapa」或微信公众号:「WordPress果酱」。

标签: WordPress 教程

热门文章