Все способы сбросить/восстановить пароль в WordPress
Изменение пароля пользователя через админку
Если у вас есть доступ к административной части WordPress (админке), то все просто. Открываем меню Пользователи, наводим мышку на нужного пользователя и жмем "Изменить". Находим раздел "Новый пароль", жмем кнопку "Создать пароль", вводим желаемый пароль (или оставляем текущий) и жмем "Обновить профиль".
Если вы авторизовались с правами администратора, то таким образом можно поменять пароль у любой учетной записи, а не только своей. Если же войти в панель управления WordPress вы не можете, то далее представлены альтернативные способы смены пароля пользователя.
Восстановление пароля через форму авторизации
Для использования этого способа необходимо иметь доступ к административной почте.
В форме авторизации на сайте нажимаем ссылку "Забыли пароль?"
В открывшемся окне вводим нужный логин пользователя или e-mail и жмем на кнопку "Получить новый пароль". E-mail указываем не какой-то произвольный, а тот, что привязан в настройках сайта к логину, под которым мы не можем войти.
После того, как появилось уведомление, что письмо для восстановления пароля отправлено, проверяем почту. Должно прийти письмо содержащее ссылку для сброса пароля. Переходим по ней и попадаем на форму ввода нового пароля. Вводим новый пароль и жмем кнопку "Задать пароль".
Новый пароль установлен. Пробуем зайти с ним в админку.
Восстановление пароля через phpMyAdmin
Для использования этого способа необходимо иметь доступ к панели управления (ПУ) хостингом, на котором располагается Ваш сайт.
В ПУ надо найти и запустить утилиту PhpMyAdmin. Ее расположение и способ запуска зависит от хостинга, поэтому как в нее войти - уточняйте у технической поддержки своего хостинга.
Когда вы запустите phpMyAdmin вы увидите примерно такую картину
Если в phpMyAdmin у вас отображается несколько баз данных, выберите ту, которая относится к целевому сайту.
Теперь посмотрите на список таблиц в левой части phpMyAdmin - есть ли среди них таблица wp_users? Если есть, все Ок. Если нет, то возможно, для повышения безопасности, стандартный префикс таблиц WordPress был изменен и все таблицы вместо wp_ начинаются с чего-то другого. В этом случае находим таблицу, название которой заканчивается на _users И далее, там где я буду упоминать таблицу wp_users, Вы будете подставлять название этой таблицы.
Если Вы вообще не видите ни одной таблицы, оканчивающейся на _users, то скорее всего Вы зашли, куда-то не туда. Используйте другой способ восстановления пароля, или обратитесь к специалисту.
Дальше можно идти двумя путями. Делают они одно и тоже, только по-разному.
Вариант 1
Переключаемся на вкладку SQL и вставляем в поле запроса такой код:
UPDATE wp_users SET user_pass = MD5('new_password') WHERE user_login = 'admin'
Показать код
Вместо new_password впишите новый желаемый пароль, а вместо admin - имя пользователя, для которого этот пароль устанавливается. И потом жмем на кнопку "Вперед" (у вас она может называться иначе).
Если все прошло удачно Вы увидите примерно такое окошко
Можно пробовать войти на сайт.
Вариант 2
Находясь в phpMyAdmin в списке таблиц слева выбираем таблицу wp_users. Теперь в правой части переключаемся на вкладку "Обзор" и увидим примерно такой список пользователей сайта
В моем примере всего один пользователь (admin), у вас их может быть больше и такого пользователя как admin может вообще не быть. Это нормально.
Находим пользователя, чей пароль хотим сбросить, и около его логина нажимаем на иконку карандаша. Откроется таблица в которой нас интересует строка с надписью user_pass.
В этой строке в столбце "Функция" из выпадающего списка выбираем MD5, а справа в столбце "Значение" вписываем новый пароль. Жмем кнопку "Вперёд" и пароль сброшен.
Восстановление пароля по FTP
Для того, чтобы использовать этот способ, вам надо иметь доступ к файловой системе сайта либо по FTP, либо через ПУ хостингом. Здесь можно пойти несколькими путями.
Вариант 1
В каталоге с сайтом находим папку wp-content, в а ней папку themes. Далее открываем папку с той темой (шаблоном), что используется на вашем сайте и в ней находим файл functions.php. Открываем его. Где-нибудь в самом его начале, но после символов <?php, пишем такие строки:
$user = get_user_by( 'login', 'admin' );
wp_set_password( 'new_password', $user->ID );
Показать код
Вместо new_password не забываем вписать новый пароль, а вместо admin - имя пользователя, для которого этот пароль устанавливается. Сохраняем файл и можно не закрывать его - он нам еще понадобится.
Открываем страницу входа в админку, но ничего не вводим. Достаточно ее просто открыть - файл функций отработал и пароль уже сбросился. Если мы сейчас попробуем войти в нее, то не сможем. Поэтому, возвращаемся к файлу functions.php и удаляем вписанные ранее строки. Сохраняем и закрываем его. Вот теперь входим в админку с новым паролем.
Вариант 2
В корне сайта создаем файл с произвольным именем и расширением php. Допустим reset.php. Копируем в него такой код:
<?php
require 'wp-load.php';
$user = get_user_by( 'login', 'admin' );
if ( ! $user ) die( 'Error!' );
wp_set_password( 'new_password', $user->ID );
die( 'Ok' );
Показать код
Не забываем в коде поменять admin и new_password на нужные логин и пароль. Сохраняем и закрываем файл.
Открываем любой браузер, в строке адреса набираем ИМЯ_ВАШЕГО_САЙТА/reset.php и заходим по данному адресу.
Если все прошло успешно, то вы увидите сообщение Ok. Если же будет сообщение Error, то возможно в коде вы указали неверный логин пользователя.
После успешного входа удаляем с сайта файл reset.php.
Вариант 3
Первые два варианта предполагали, что вам известен логин пользователя-администратора, для которого требуется сбросить пароль. Если же логин пользователя неизвестен, то можно добавить нового пользователя с правами администратора.
Так же, как и в варианте 2, создаем в корне сайта некий файл, допустим add.php и добавляем в него такой код:
<?php
$login = 'admin'; // логин для нового пользователя
$pass = '1'; // пароль для нового пользователя
require 'wp-load.php';
$userdata = array(
'user_login' => $login,
'user_pass' => $password,
'role' => 'administrator'
);
$res = wp_insert_user( $userdata );
if( is_wp_error( $res ) ) {
header( "Content-Type: text/html; charset=utf-8" );
echo $res->get_error_message();
}
else {
wp_set_password( $pass, $res );
echo 'Ok';
}
Показать код
В этом коде можно ничего не менять и использовать его как есть. Тогда будет создан пользователь admin с паролем 1. Конечно это очень слабый пароль и после успешного входа в админку сайта вам надо первым делом сменить его на надежный.
Сохраняем и закрываем файл. Открываем любой браузер, в строке адреса набираем ИМЯ_ВАШЕГО_САЙТА/add.php и заходим по данному адресу.
Если все прошло успешно, вы увидите сообщение Ok. Если будет сообщение об ошибке типа "Извините, это имя пользователя уже существует!" - значит вы в коде написали логин, который на данном сайте уже существует. Тогда с этим логином просто используйте вариант 2.
После успешного входа удаляем с сайта файл add.php.
Сброс пароля через консоль
Пароль для входа в админку 5.3 можно сбросить так же через командную строку (консоль). Но для этого вам надо знать такие данные как название базы данных, логин и пароль для подключения к ней. К тому же, если ваш сайт расположен на удаленном сервере, вам необходим доступ к нему по SSH. Если у вас все это есть и вы почему-то не можете использовать наглядный доступ через phpMyAdmin, Ok, поехали.
Для начала собственно необходимо запустить саму консоль непосредственно на сервере или посредством SSH. Для подключения через консоль к удаленному серверу рекомендую использовать такого популярного клиента как Putty.
Когда консоль запущена, подключаемся к MySQL. Для этого в командной строке вводим следующее:
mysql -u user_name -pPASS db_name
Показать код
В этой строке вместо user_name пишете логин для подключения к базе данных, вместо PASS пишете пароль для подключения к базе данных, а вместо db_name название базы данных. Обратите внимание, что ключ -p и пароль написаны слитно. Это важно!
Когда все ввели и нажали Ввод, то при успешном подключении увидите вот такое приглашение MySQL:
Посмотрите список таблиц базы данных, чтобы убедиться что вы там, где надо. Наберите
show tables;
Показать код
и нажмите Ввод. Скорее всего увидите что-то вроде этого:
Важно чтобы в этом списке была таблица wp_users (или таблица с окончанием _users, как упоминалось выше). Теперь можно посмотреть какие вообще пользователи есть на сайте:
SELECT user_login FROM wp_users;
Показать код
В данном случае на сайте зарегистрировано 2 пользователя: admin и admin2. И, наконец, давайте зададим пользователю admin новый пароль, выполнив такую команду:
UPDATE wp_users SET user_pass = MD5('123456') WHERE user_login = 'admin';
Показать код
В этой команде можно ничего не менять, тогда пользователю admin выставится пароль 123456. Если все успешно, то мы увидим
Можно выходить из MySQL (набираем команду Exit) и заходить в админку WordPress.
Сброс пароля через WP CLI
WP-CLI — это утилита для командной строки Unix-систем, с помощью которой можно управлять сайтами на WordPress, расположенными на сервере. Многие нормальные хостинги предоставляют такую возможность. Чтобы работать с ней вам нужно подключиться к консоли серера по SSH или напрямую.
Для начала проверим что WP-CLI установлен. Выполним в консоли такую команду:
wp --version
Показать код
Если утилита установлена, то в ответ вы увидите ее версию. Если же нет, то будет сообщение "command not found" (команда не найдена).
Затем использую команды вроде cd вам надо в командной строке переместиться в нужную инсталляцию WordPress. То есть в тот каталог, где расположены папки wp-admin, wp-content и wp-includes нужного сайта.
После этого можно посмотреть список пользователей данного сайта выполнив такую команду:
wp user list
Показать код
Ответ должен быть примерно таким:
Здесь мы видим двух пользователей - admin и admin2. Давайте сбросим пароль у пользователя admin:
wp user update admin --user_pass='123456'
Показать код
Вместо admin не забудьте подставить логин своего пользователя, а вместо 123456 нужный вам пароль. Можно заходить в ПУ WordPress.
Другие способы сброса пароля WordPress
Возможно на вашем хостинге провайдер предоставляет возможность управления установками WordPress через расширение WordPress Toolkit. Тогда используя его можно в том числе сбросить пароль любого пользователя WordPress.