Все способы сбросить/восстановить пароль в 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 - имя пользователя, для которого этот пароль устанавливается. И потом жмем на кнопку "Вперед" (у вас она может называться иначе).

Если все прошло удачно Вы увидите примерно такое окошко

восстановление пароля через phpMyAdmin

Можно пробовать войти на сайт.

Вариант 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
Показать код

Ответ должен быть примерно таким:

Сброс пароля через WP CLI

Здесь мы видим двух пользователей - admin и admin2. Давайте сбросим пароль у пользователя admin:

Скопировано
 wp user update admin --user_pass='123456'
Показать код

Вместо admin не забудьте подставить логин своего пользователя, а вместо 123456 нужный вам пароль. Можно заходить в ПУ WordPress.

Другие способы сброса пароля WordPress

Возможно на вашем хостинге провайдер предоставляет возможность управления установками WordPress через расширение WordPress Toolkit. Тогда используя его можно в том числе сбросить пароль любого пользователя WordPress.