Для админов может быть полезно, как создать пользователя с админскими правами для сайта под WordPress, имея доступ только к базе данных. Это может быть полезно в случае, когда нельзя менять пароль существующего админа, а его реквизиты получить в текущий момент нельзя (к примеру, при переносе сайта или админ поменял пароль).
Учетные записи пользователей хранятся в таблице wp_users, а их настройки — в wp_usermeta.
Добавляем пользователя в WP_USERS
Вот шаблон для sql запроса, замените указанные для примера данные (user_login, user_mail) на ваши:
1 2 3 4 |
INSERT INTO `wp_users` (`user_login`, `user_pass`, `user_nicename`, `user_email`, `user_url`, `user_registered`, `user_activation_key`, `user_status`, `display_name`) VALUES ('shra', '$P$Bsomepasshash', 'shra', 'to@shra.ru', '', '2016-12-01 15:02:27', '', 0, 'Юрий'); |
Хеш пароля (user_pass) нам не важен, т.к. мы будем запрашивать выслать новый пароль по email.
Запомните идентификатор созданной записи (wp_users.ID).
Делаем пользователя администратором
Теперь мы выдадим пользователю права админа. Вот шаблон sql запроса, позволяющий это реализовать. Подставьте свой wp_users.ID для столбца wp_usermeta.user_id.
1 2 3 4 |
INSERT INTO `wp_usermeta` (`user_id`, `meta_key`, `meta_value`) VALUES (%Ваш_user_id%, 'wp_user_level', '10'), (%Ваш_user_id%, 'wp_capabilities', 'a:1:{s:13:"administrator";b:1;}'), (%Ваш_user_id%, 'rich_editing', 'true'); |
Установка первых двух мета параметров (wp_user_level, wp_capabilities) делают пользователя администратором сайта, а третий — разрешает пользоваться WYSIWYG редактором.
Получение правильного хеша пароля
Т.к. пароль хранится в виде хеша, то его нужно как то сформировать. Лучше это доверить сделать за нас вордпрессу.
Идем на страничку авторизации — /wp-login.php
Кликаем на «Забыли пароль?». Далее вводим email, только что созданного админа.
Получаем ссылку для однократного входа на почту и действуем по высланной инструкции. Так мы завершаем формирование аккаунта.
Остаётся лишь ввести реквизиты на странице /wp-login.php и заняться делом.
Пользователь создан успешно, а вот не дает права админа
Спасибо все получилось!