,

Как убрать возможность восстановления и смены пароля из WordPress

Coffee - Как убрать возможность восстановления и смены пароля из Wordpress

Зачем убирать восстановление или смену пароля в WordPress

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

Способ первый: убираем опцию восстановления пароля через плагин

Способ с плагином проще и удобнее. Он позволяет вам настроить отмену восстановления пароля для определенных пользователей и их групп. Вам надо установить и активировать плагин Plainview Protect Passwords, после чего зайти на страницу Settings > Protect Passwords, чтобы все настроить.

protect password settings 1 - Как убрать возможность восстановления и смены пароля из Wordpress

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

disabledpasswordreset 1 - Как убрать возможность восстановления и смены пароля из 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.

ftpplugindir 1 - Как убрать возможность восстановления и смены пароля из Wordpress

Загрузите созданный вами файл в эту папку. Теперь вам надо зайти в админку на страницу плагинов, где вы должны увидеть новый плагин под названием Disable Password Reset в списке установленных плагинов. Активируйте его.

activateplugin 1 - Как убрать возможность восстановления и смены пароля из Wordpress

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


Наша специальность — разработка и поддержка сайтов на WordPress. Контакты для бесплатной консультации — vadim@coma.lv, +371 29394520