Как убрать возможность восстановления и смены пароля из WordPress
Зачем убирать восстановление или смену пароля в WordPress
Если вы включили регистрацию у себя на сайте, то возможность восстановления пароля позволяет восстановить утерянные пароли. Однако в некоторых случаях вы можете захотеть убрать эту опцию для определенных пользователей. Например, если вы создали для кого-то временный аккаунт или если вы создали демосайт, на который пользователи могут зайти с демо-именем и демо-паролем. Самым простым способом в данном случае будет просто убрать ссылку на восстановление пароля. Однако у некоторых пользователей может сохраниться адрес формы восстановления пароля.
Способ первый: убираем опцию восстановления пароля через плагин
Способ с плагином проще и удобнее. Он позволяет вам настроить отмену восстановления пароля для определенных пользователей и их групп. Вам надо установить и активировать плагин Plainview Protect Passwords, после чего зайти на страницу Settings > Protect Passwords, чтобы все настроить.
Выберите пользовательские роли или отдельных пользователей, чтобы отключить смену пароля. Также можно отключить восстановление пароля для всех пользователей за исключением самого себя. Вы сможете убедиться в работе плагина, зайдя на страничку входа в WordPress и щелкнув по ссылке восстановления пароля. Вы попадете на страницу с формами для ввода имени пользователя и электронного адреса. Однако вы увидите ошибку, что восстановление пароля не работает для этого пользователя.
Способ второй: вручную убираем функцию восстановления пароля в WordPress
Откройте Блокнот и вставьте следующий код
<?php class 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 Password_Reset_Removed(); ?>
Сохраните этот файл под названием disable-password-reset.php. Затем соединитесь со своим сайтом по FTP и зайдите в папку плагинов. Она находится в директории wp-content.
Загрузите созданный вами файл в эту папку. Теперь вам надо зайти в админку на страницу плагинов, где вы должны увидеть новый плагин под названием Disable Password Reset в списке установленных плагинов. Активируйте его.
Вот и все, активация плагина отключит восстановление пароля для всех пользователей, включая администраторов. Администраторы смогут восстановить пароли из админпанели, но они не смогут этого сделать со страницы входа.
Наша специальность — разработка и поддержка сайтов на WordPress. Контакты для бесплатной консультации — [email protected], +371 29394520
Привет
А почему вы пишете что данная статья в оригинале на анг.языке и вот тут :
http://www.wpbeginner.com/wp-tutorials/how-to-remove-the-password-reset-change-option-from-wordpress/
?
Потому что наша статья — это перевод статьи наших коллег с англоязычного блога :-)