Как изменить правила редиректа с wp-admin

Здравствуйте, друзья. Сегодня речь пойдёт о том, как изменить правила редиректа с wp-admin. Вопрос безопасности и изменения страницы входа в админку сайта мы уже обсуждали, где я поделился готовыми решениями. Одним из них был редирект с wp-admin на главную страницу сайта.

Этот код великолепно справляется с задачей и исключает доступ к странице входа от её производных, которые способны вывести злоумышленника к ней, например:

https://site.ru/wp-admin/post-new.php
https://site.ru/wp-admin/edit.php

Но, в этом коде есть одна тонкость, кроме администратора, доступ в админку не получит никто. Даже если введёт правильный логин и пароль. То есть, если вы добавите автора или редактора на сайт, он не сможет попасть в административную панель сайта.

wp-admin, нет доступа

У него появится верхняя административная панель, но все попытки войти в админку будут перенаправлять его на главную страницу.

Изменение правил редиректа с wp-admin

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

/*редирект с wp-admin*/
add_action( 'init', 'blockusers_init' );
 function blockusers_init() {
 if ( is_admin() && ! current_user_can( 'administrator' ) && ! current_user_can( 'editor' ) &&
 ! ( defined( 'DOING_AJAX' ) && DOING_AJAX ) ) {
 wp_redirect( home_url() );
 exit;
 }
 }

Оранжевым цветом отмечен добавочный код, который открывает административную панель для редактора.

Если вы присвоили новому пользователю роль автора, тогда в коде нужно будет изменить editor на author.

Таким образом, дополнительно к администратору, вы предоставляете доступ в админку вашему редактору или автору. Но, при этом доступ к странице входа будет закрыта для всех остальных.

На этом сегодня всё, желаю вам успехов и хорошего настроения.

С уважением, Максим Зайцев

Понравилась статья? Поделиться с друзьями:
Комментарии: 2
  1. Наталья

    Здравствуйте! А вы не подскажите, как решить проблему принудительного редиректа на страницу входа при попадании на любую страницу моего сайта вордпресс. Причем редирект срабатывает не всегда, а лишь 1 раз в сутки и только с десктопной версии. Надеюсь, что он срабатывает лишь для моего компьютера, как для админа, но в этом не уверенна. Плагины безопасности стоят iThemes Security и All In One WP Security.

    1. Максим Зайцев (автор)

      Здравствуйте, Наталья. Причин тут моет быть множество, нужно смотреть и разбираться с плагинами и кодами. Я прогулялся по вашему сайту, редирект нигде меня не подлавил ;-) это должно вас немного успокоить.

Добавить комментарий