В WordPress есть несколько способов сбросить пароль. (Обычно самый простой способ сбросить его — воспользоваться ссылкой «Забыли пароль?» На главной странице входа в ваш блог или веб-сайт.) Однако бывают случаи (особенно, если ваша электронная почта работает некорректно), когда вам, возможно, придется предпринять другие шаги для сброса пароля.
Вот список различных способов сбросить пароль. Используемый вами метод зависит от типа доступа к вашему веб-сайту.
Изменение пароля через профиль пользователя
Изменить пароль в WordPress вы можете через настройки профиля пользователя. После того как вы выполнили вход в панель администрирования WordPress, зайдите в меню Пользователи → Ваш профиль и найдите раздел Новый пароль. Здесь вы можете задать новый пароль для текущего пользователя.
Если вы являетесь администратором сайта, то вы можете так же сменить пароль для другого пользователя, выбрав его в меню Пользователи → Все пользователи. Обратите внимание на шкалу надёжности, которая поможет вам выбрать более длинный и надёжный пароль.
Данный метод является самым простым и удобным, но к сожалению не применимым в тех случаях, когда вы не можете выполнить вход в панель управления WordPress. К счастью есть и другие варианты, не требующие входа.
Через ссылку восстановления
Если вы забыли пароль от вашего сайта на WordPress, то вы можете восстановить его по электронной почте. В форме входа (по адресу /wp-login.php) вы можете щёлкнуть ссылку «Забыли пароль» и ввести адрес электронной почты вашего пользователя или имя пользователя.
В течение нескольких минут на вашу электронную почту придёт письмо со специальной ссылкой для восстановления пароля. При переходе по этой ссылке, вам будет представлена форма, где вы сможете ввести новый пароль для вашего пользователя. Так же как и в первом методе, вам будет представлен индикатор надёжности пароля.
Если у вас нет доступа к электронной почте пользователя или если по какой-либо причине не работает отправка электронной почты с вашего сервера, то вам придётся воспользоваться другим методом.
Через командную строку MySQL
Если ваш хостинг провайдер не предоставляет пакет phpMyAdmin, то вы можете попытаться подключиться к вашей базе данных MySQL используя клиент MySQL через командную строку. Этот способ является более продвинутым и не рекомендуется новичкам.
Подключившись к серверу через SSH, выполните вход на сервер MySQL через командную строку, заменив значения username и password (а так же localhost, если вы подключаетесь к удалённой базе данных):
mysql -uusername -ppassword -hlocalhost
Если вам удалось подключиться, то так же как и в предыдущем способе, вам нужно найти вашу базу данных WordPress. Вы можете это сделать используя команды SHOW DATABASES:
mysql> SHOW DATABASES; +--------------------+ | Database | +--------------------+ | information_schema | | wordpress | +--------------------+
Командой SHOW TABLES можно получить список всех таблиц определённой базы данных:
mysql> SHOW TABLES IN wordpress; +------------------------------+ | Tables_in_wordpress | +------------------------------+ | wp_commentmeta | | wp_comments | | wp_links | | wp_options | ...
После того, как вы нашли интересующую вас базу данных, выберите её командой USE, и выведите список всех пользователей:
mysql> USE wordpress; Database changed mysql> SELECT user_login FROM wp_users; +---------------+ | user_login | +---------------+ | admin | | user | ...
Определив имя пользователя чей пароль вы хотите изменить, используйте команду UPDATE для смены пароля. Так же как и с phpMyAdmin, здесь необходимо воспользоваться функцией MD5 при вводе нового пароля:
mysql> UPDATE wp_users SET user_pass = MD5('newpassword') WHERE user_login = 'user'; Query OK, 1 row affected (0.00 sec) Rows matched: 1 Changed: 1 Warnings: 0
После выполнения данного запроса вы сможете выполнить вход в панель администрирования WordPress, используя ваш новый пароль.
При работе с запросами MySQL стоит быть предельно осторожным. Забыв например часть «WHERE…» в предыдущем запросе, вы измените пароли для всех пользователей и отменить это действие нельзя. Мы рекомендуем сделать резервную копию базы данных прежде чем начинать работу с консолью MySQL.
Через phpMyAdmin
Большинство хостинг-провайдеров предоставляют доступ к phpMyAdmin — это утилита для работы с базами данных MySQL, где WordPress хранит всю информацию о своих пользователях. Если вы не можете зайти в phpMyAdmin, советуем обратиться за помощью к вашему хостинг-провайдеру, или же попробовать другой способ смены пароля.
После того как вы выполнили вход в phpMyAdmin, найдите базу данных вашего сайта и выберите её в панели слева. Её легко распознать по наличию таблиц wp_posts, wp_postmeta, wp_comments, wp_commentmeta, wp_users, wp_usermeta и т.д. Учтите, что префикс может отличаться.
Здесь нас интересует таблица wp_users. После того как вы её откроете, вы увидите список всех пользователей вашего сайта. Выберите того пользователя, чей пароль вы хотите изменить и щёлкните кнопку «редактировать». Вам будет представлена форма редактирования пользователя.
Поле user_pass отвечает за пароль выбранного пользователя. Для смены пароля очень важно выбрать функцию MD5 из выпадающего списка для поля user_pass, и затем ввести новый пароль в значении поля.
После сохранения изменений вы сможете выполнить вход в панель администрирования WordPress используя ваш новый пароль. Учтите, что изменив пароль в phpMyAdmin, вы не увидите его в открытом виде в таблице wp_users, поскольку WordPress хранит все пароли в зашифрованом виде.
Через FTP
Когда другие методы не являются доступными, пароль в WordPress можно изменить с помощью простого PHP файла. Для данного способа вам понадобится доступ к FTP серверу, где хранится ваш сайт. Создайте новый PHP файл с произвольным именем (например password-recovery.php) и следующим содержанием:
<?php add_action( 'init', 'my_password_recovery' ); function my_password_recovery() { $user = get_user_by( 'login', 'my-username' ); wp_set_password( 'my-new-password', $user->ID ); }
Данный код находит в базе данных пользователя с заданным именем пользователя, и изменяет его пароль. Не забудьте заменить значения my-username и my-new-password на ваше имя пользователя и пароль.
После этого откройте ваш FTP клиент и подключитесь к серверу вашего сайта. В директории где установлен WordPress найдите папку wp-content и зайдите в неё. Найдите директорию mu-plugins (не путайте с директорией plugins). Если директория mu-plugins не существует — создайте её. Загрузите в директорию mu-plugins созданный вами PHP файл.
Конечный путь до файла должен выглядеть примерно так: wordpress/wp-content/mu-plugins/password-recovery.php
После того как вы загрузили ваш файл, вы сможете выполнить вход в административную панель WordPress используя пароль, который вы указали в вашем PHP файле.
И наконец, не забудьте снова зайти в вашу директорию mu-plugins и удалить созданный вами файл password-recovery.php. Если вы этого не сделаете, WordPress будет изменять пароль при каждом посещении вашего сайта, что существенно снизит скорость его работы.
Через WP CLI
WP CLI — это инструмент командной строки для управления вашей установкой WordPress.
- Перейдите в корневой каталог wordpress и введите
$ wp user list
- Затем обновите пользователя
$ wp user update 1 --user_pass=$UP3RstrongP4$w0rd
заменив «1» на идентификатор пользователя, которого вы хотите обновить.
Использование сценария аварийного сброса пароля
Если другие перечисленные выше решения не работают, попробуйте сценарий аварийного сброса пароля. Обратите внимание, что это не плагин, это скрипт PHP.
Имейте ввиду, что:
- Сценарий экстренного сброса пароля требует, чтобы вы знали имя пользователя администратора.
- Он обновляет пароль администратора и отправляет электронное письмо на адрес электронной почты администратора.
- Даже если вы не получите письмо, пароль все равно будет изменен.
- Вам не нужно входить в систему, чтобы использовать его. (В конце концов, если бы вы могли войти в систему, сценарий вам не понадобился бы.)
- Поместите скрипт в корень вашей установки WordPress. Не загружайте его в каталог плагинов WordPress.
- По соображениям безопасности не забудьте удалить сценарий, когда закончите.
Инструкция по применению:
- Скопируйте аварийный сценарий из Скрипт аварийного пароля и поместите в файл с именем emergency.php в корне вашей установки WordPress (тот же каталог, который содержит wp-config.php).
- В вашем браузере откройте http://example.com/emergency.php.
- В соответствии с инструкциями введите имя пользователя администратора (обычно admin) и новый пароль, затем нажмите Обновить настройки. Появится сообщение об изменении пароля. Администратору блога будет отправлено письмо с измененным паролем.
- По завершении удалите emergency.php со своего сервера. Не оставляйте его на своем сервере, так как кто-то другой может использовать его для изменения вашего пароля.
Дополнительная информация
- Вот еще один сценарий сброса пароля который можно использовать, не зная имени пользователя или электронной почты.