Опубликовано:

Восстанавливаем доступ к админке WordPress — несколько способов

Содержание:

Вступление

Сегодня захотел написать статью для этого блога, но осознал, что не помню пароль от админки, т.к. не заходил в этот блог на протяжении нескольких лет! Это и способствовало появлению данного поста. Разберем несколько способов восстановления утерянного доступа к аккаунту на CMS WordPress.

Способ 1: меняем пароль через форму восстановления пароля

Стандартный вариант смены пароля. Открываем форму авторизации по ссылке http://domen.ru/wp-admin/ (где domen.ru – домен вашего сайта) и кликаем на ссылку Забыли пароль?

Кликаем "Забыли пароль" на странице

Вводим свой логин или E-mail в соответствующее поле и жмем кпопку Получить новый пароль:

Вводим E-mail и жмем "Получить новый пароль"

Если указанный логин или E-mail существует на сайте — система сообщит, что письмо с паролем отправлено на почту:

Всё ок - письмо с инструкцией отправлено на почту

Проверяем почту – видим письмо со ссылкой на страничку восстановления пароля:

Письмо со ссылкой для восстановления пароля

Переходим по ссылке – видим форму для ввода нового пароля:

Форма ввода нового пароля

Указываем нужный пароль и жмем кнопку Задать пароль. Новый пароль вступил в силу — можно войти в админку:

Новый пароль установлен - вы просто супер

Способ 2: меняем пароль в базе данных с помощью PHPMyAdmin

Используем этот вариант, если предыдущий не помог (например, по какой-то причине на почту не пришло письмо со ссылкой на страницу смены пароля). Очевидно, что для данного способа необходим доступ к интерфейсу PHPMyAdmin. Обычно в него можно попасть через панель управления хостингом из раздела с базами данных. Находясь в PHPMyAdmin, выбираем нашу базу данных и переходим в таблицу wp_users:

Выбираем таблицу wp_users

В таблице  находим строчку нашего пользователя (в моем случае в таблице всего 1 пользователь) и переходим к редактированию записи, нажав ссылку Изменить:

Нажимаем ссылку "Изменить" возле нужной записи

Нас интересует строчка user_pass:

  1. В столбце Функция обязательно выбираем MD5
  2. В столбец Значение вводим новый пароль
  3. Сохраняем изменения

Устанавливаем новый пароль

Пароль изменен — попробуйте авторизоваться.

Способ 3: меняем пароль пользователя с помощью FTP

Если нет доступа к интерфейсу PHPMyAdmin или просто не хочется лезть в базу данных – изменим пароль с помощью PHP функции WordPress wp_set_password. Для этого нам понадобится FTP доступ. Через FTP менеджер подключаемся к своему сайту, заходим в папку активной темы, в моем случае это папка /wp-content/themes/alfavitka/ и открываем для редактирования файл functions.php

Находим файл functions.php

Если в папке нет файла functions.php – создаем его.

В самое начало этого файла нужно добавить следующий код:

<?wp_set_password( 'NewPassword123', 1 );?>

NewPassword123 = ваш новый пароль

1 = ID вашего пользователя, обычно у администратора ID равен 1

Вставляем код в functions.php

Теперь при каждом открытии сайта пароль администратора будет меняться на вышеуказанный. Нам осталось сделать следующее:

  1. Зайти на сайт – посла загрузки страницы пароль администратора будет изменен.
  2. Удалить только что добавленную строчку <?wp_set_password( ‘NewPassword123’, 1 );?> из файла functions.php (т.к. пока мы ее не удалим – не сможем авторизоваться).
  3. Через административный интерфейс авторизоваться с новым паролем.
  4. При желании – установить себе новый пароль через раздел «Пользователи» в админ-панели.

Способ 4: через FTP создаем нового пользователя с правами администратора

Этот вариант поможет, если вы не помните ни логин, ни пароль от учетной записи администратора. Просто создадим нового пользователя с правами админа. Для этого в тот же самый файл functions.php в самое начало добавляем этот код:

function wpb_admin_account()
{
    $user = 'user2';
    $pass = 'user2password';
    $email = 'email@domen.com';
    if ( !username_exists( $user )  && !email_exists( $email ) )
    {
        $user_id = wp_create_user( $user, $pass, $email );
        $user = new WP_User( $user_id );
        $user->set_role( 'administrator' );
    }
}
add_action('init','wpb_admin_account');

В коде поменяйте эти значения:

user2 = имя нового пользователя
user2password = пароль нового пользователя
email@domen.com = E-mail нового пользователя

Отлично, теперь:

  1. Открываем сайт, чтобы скрипт создал нового пользователя.
  2. Пользователь создан, данный код нам больше не нужен, поэтому удаляем его из functions.php.
  3. Заходим в админ-панель, используя новые логин и пароль.

Переходим в раздел Пользователи:

Список пользователей WordPress

Через этот раздел узнаем логин первой учетной записи админа, меняем для нее пароль и удаляем вторую учетную запись, которую мы только что создали с помощью скрипта.

Вот и всё :)