user_login и user_nicename: в чем разница
Когда вы вызываете функцию get_users(), возвращается список объектов пользователей. У каждого из этих пользователей есть ряд свойств. В чем разница между user_login и user_nicename в этих возвращаемых свойствах для каждого пользователя? И какое из этих двух свойств отображается в URL? (Я спрашиваю, потому что в моем случае оба свойства одинаковые!).
user_nicename — это URL-оптимизированная версия user_login. Обычно, если вы не используете специальные символы в логине, то nicename будет совпадать с логином. Однако если при регистрации вы введёте email-адрес в поле логина, то разница станет заметна.
Например, если ваш логин — user@example.com, то nicename будет userexample-com, и именно он будет использоваться в URL автора (например, в архиве автора, постоянных ссылках записей и т. д.).
Я написал статью в блоге о названиях в WordPress, чтобы задокументировать это. Вот суть:
- Имя пользователя (Username): колонка "user_login" в таблице wp_users, это то, что на обычном английском обычно называют "user ID".
- Псевдоним (Nickname): метаполе "nickname" в таблице wp_usermeta. Это аналог "handle" (ника) в различных чат-программах. Предпочтительно отображать это поле вместо wp_users.user_login, если вам нужно что-то кроме реального имени пользователя для идентификации.
- Колонка "user_nicename" в таблице wp_users. Это user_login, преобразованный в "slug" WordPress для использования в URL-адресах.