Как на сайте WordPress запретить восстановление пароля?

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

видео Как на сайте WordPress запретить восстановление пароля?

Как защитить сайт на WordPress? Безопасность WordPress.

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



Стандартные инструменты “движка” не позволяют как-либо повлиять на ход восстановления пароля. Поэтому для решения задачи воспользуемся сторонними методами.

Метод 1. Плагин Plainview Protect Passwords

Наиболее простым для пользователя решением является установка специального плагина Plainview Protect Passwords . После его установки и активации в админ-панели необходимо перейти в раздел Настройки -> Protect Passwords .


Как восстановить пароль к админке на Wordpress?

Плагин позволит запретить восстановление пароля как для отдельного, так и для всех пользователей. Для этого на странице настроек плагина присутствуют несколько блоков. В разделе Protected Roles Вы сможете выбрать одну или несколько зарегистрированных на сайте ролей, для которых будет запрещено восстановление пароля. Также можно запретить одному или нескольким конкретным пользователям изменять пароль (блок Protected users ). Отключим эту возможность, например, для отдельного пользователя IvanIvanov .


Как восстановить пароль администратора WordPress

Теперь, когда вышеуказанный пользователь захочет “вспомнить” свой пароль, то увидит следующее:

Метод 2. Ручное отключение восстановления пароля

Существует еще один метод, позволяющий отключить эту функцию. Он предусматривает вставку специального PHP -кода в файл functions.php Вашей активной WordPress-темы.

Если Вы не знаете, как редактировать functions.php , то в этом случае Вам поможет плагин ProFunctions .

Итак, в указанный файл нужно добавить следующие строки:

class WPSchool_Password_Reset_Removed { function __construct() { add_filter( 'show_password_fields', array( $this, 'disable' ) ); add_filter( 'allow_password_reset', array( $this, 'disable' ) ); add_filter( 'gettext', array( $this, 'remove' ) ); } function disable() { if ( is_admin() ) { $userdata = wp_get_current_user(); $user = new WP_User($userdata->ID); if ( !empty( $user->roles ) && is_array( $user->roles ) && $user->roles[0] == 'administrator' ) return true; } return false; } function remove( $text ) { return str_replace( array( 'Lost your password?', 'Lost your password' ), '', trim( $text, '?' ) ); } } $pass_reset_removed = new WPSchool_Password_Reset_Removed();

Код отключит возможность восстановления пароля для всех зарегистрированных на сайте пользователей, включая администраторов.

Если Вам понравилась статья — поделитесь с друзьями

rss