Несколько способов изменить пароль в WordPress

Говорят Wordpress один из самых популярных движков для блогов. Я думаю, что оно действительно так, но я обходил его всегда стороной и старался тыкать только палочкой из далека. Но вот я устроился на работу и сталкнулся с ним говном нос к носу. И естественно у меня первая проблема, все разом забыли пароль от админа и как дальше жить не знае ни кто. Ниже несколько способов, как это сделать минуя админку движка и его родного средства восстановления паролей.

WP-CLI

Проще и круче способа ну просто нет. Все что нужно это выполнить команду user update:

1
wp user update username --user_pass=userpass

Но я знаю людей у которых до сих пор по каким то причинам не установлен WP-CLI. Срециально для них я частично спиздил статью у WP Magazine. Ребят простите, что не взял у вас согласие на публикацию, но я с этим ебаным говном WP работаю не так давно и каждый раз гуглить мне лень. Поэтому будет так.

Изменение пароля с помощью 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 хранит все пароли в зашифрованом виде.

Изменение пароля с помощью консоли MySQL

Если ваш хостинг провайдер не предоставляет пакет phpMyAdmin, то вы можете попытаться подключиться к вашей базе данных MySQL используя клиент MySQL через командную строку. Этот способ является более продвинутым и не рекомендуется новичкам.

Подключившись к серверу через SSH, выполните вход на сервер MySQL через командную строку, заменив значения username и password (а так же localhost, если вы подключаетесь к удалённой базе данных):

1
mysql -uusername -ppassword -hlocalhost

Если вам удалось подключиться, то так же как и в предыдущем способе, вам нужно найти вашу базу данных WordPress. Вы можете это сделать используя команды SHOW DATABASES:

1
2
3
4
5
6
7
mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| wordpress          |
+--------------------+

Командой SHOW TABLES можно получить список всех таблиц определённой базы данных:

1
2
3
4
5
6
7
8
9
mysql> SHOW TABLES IN wordpress;
+------------------------------+
| Tables_in_wordpress          |
+------------------------------+
| wp_commentmeta               |
| wp_comments                  |
| wp_links                     |
| wp_options                   |
...

После того, как вы нашли интересующую вас базу данных, выберите её командой USE, и выведите список всех пользователей:

1
2
3
4
5
6
7
8
9
mysql> USE wordpress;
Database changed
mysql> SELECT user_login FROM wp_users;
+---------------+
| user_login    |
+---------------+
| admin         |
| kovshenin     |
...

Определив имя пользователя чей пароль вы хотите изменить, используйте команду UPDATE для смены пароля. Так же как и с phpMyAdmin, здесь необходимо воспользоваться функцией MD5 при вводе нового пароля:

1
2
3
mysql> UPDATE wp_users SET user_pass = MD5('newpassword') WHERE user_login = 'kovshenin';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0

После выполнения данного запроса вы сможете выполнить вход в панель администрирования WordPress, используя ваш новый пароль.

При работе с запросами MySQL стоит быть предельно осторожным. Забыв например часть «WHERE…» в предыдущем запросе, вы измените пароли для всех пользователей и отменить это действие нельзя. Мы рекомендуем сделать резервную копию базы данных прежде чем начинать работу с консолью MySQL.

Изменение пароля с помощью PHP файла

Когда другие методы не являются доступными, пароль в WordPress можно изменить с помощью простого PHP файла. Для данного способа вам понадобится доступ к FTP серверу, где хранится ваш сайт. Создайте новый PHP файл с произвольным именем (например password-recovery.php) и следующим содержанием:

1
2
3
4
5
6
<?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 будет изменять пароль при каждом посещении вашего сайта, что существенно снизит скорость его работы.

Чуть не забыл. Вы можете почитать меня в твиттере или телеграме, посмотреть мои фотографии в инстаграме, подружиться со мной в PSN, позлить меня на твиче пока я играю или посмотреть в записи. А самые лучшие человеки могут меня поддержать деньгой.