Вопрос: Изменение user_nicename

user_nicename имеет то же значение, что и user_login . Я хочу изменить значение user_nicename только с помощью фрагмента кода в functions.php или wp-config.php. Возможно ли это без использования phpmyadmin или какого-либо плагина?

Ответы и комментарии:

Обратите внимание, что user_nicename и user_login являются отдельными причинами, и они не совпадают. user_nicename - это версия user_login, очищенная с помощью URL, изменение ее на что-то другое может привести к непредсказуемым последствиям. Возможно, вы действительно хотели изменить display_name?
Создан 13-12-2018 02:18 Tom J Nowell♦

Привет @ TomJNowell, я хотел изменить имя_пользователя только потому, что если я не изменил его, хакеры могут легко обнаружить его с помощью URL-адреса и атаковать мой блог. (грубая сила). Блог стал более безопасным.
Создан 13-12-2018 01:38 Serdar Koçak

имена пользователей и идентификаторы не являются секретными, их можно получить с помощью API REST, XML RPC, даже классов CSS и URL-адресов на веб-странице. Это никак не улучшит вашу безопасность, и если безопасность ваших сайтов зависит от секретности этих вещей, у вас есть серьезные проблемы
Создан 13-12-2018 04:08 Tom J Nowell♦

@ TomJNowell Не могли бы вы уточнить, какие проблемы вы имеете в виду? Я не менял таблицу user_login. Я изменил только user_nicename. Также я заблокировал запросы XML-RPC и REST API. Там нет класса CSS о user_login. Мой блог минимален. user_nicename используется для создания только постоянной ссылки автора. Хакеры могут узнать имя пользователя по запросу автора. Так что я изменил только это.
Создан 14-12-2018 12:16 Serdar Koçak

например на страницах автора, когда вы комментируете вещи. Кроме того, блокируя REST API, вы наносите ущерб ряду плагинов и основных функций, например, редактор блоков 5.0, Yoast SEO, Jetpack и т. д. Идентификаторы пользователей и логины не являются секретом, они никогда не были секретом, и их раскрытие не должно быть угрозой безопасности. Здесь у нас есть театр безопасности. Единственная причина, по которой существует user_nicename, заключается в том, что если в вашем имени пользователя есть умляут или другой не-URL-дружественный символ, он не будет совпадать, когда вы выполняли запрос, поэтому он заранее очищает его для повышения производительности.
Создан 14-12-2018 02:17 Tom J Nowell♦

Большое вам спасибо @sallyCJ Это работает хорошо :)
Создан 13-12-2018 02:55 Serdar Koçak

Пожалуйста. :)
Создан 13-12-2018 02:49 Sally CJ

Да, вы можете использовать wp_update_user ():
wp_update_user (массив (
    'ID' => 123,
    'user_nicename' => 'value'
));

Просто замените 123 на правильный идентификатор пользователя, а значение на предпочтительное значение user_nicename.
Функция также позволяет вам изменять значение других полей в таблице пользователей WordPress (wp_users).
Создан 13-12-2018 01:29 Sally CJ3,8162415