Главная
Wordpress
Как закрыть доступ к админке WordPress всем кроме администратора
  • 195
  • 2
  • Рубрика: Wordpress

Как закрыть доступ к админке WordPress всем кроме администратора

Как закрыть доступ к админке WordPress всем кроме администратора

Как закрыть доступ к админке WordPress всем кроме администратора
Доброго времени суток. 🙂

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

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

И так, перейдем к самому интересному, как же организовать проверку и перенаправление, если не админ авторизовался. Все делается очень просто. Вам понадобится файл пользовательских функций function.php в конец которого нужно добавить следующий код:

Добавлять следует в самый конец перед закрывающим тегом php - ?>, если его нет, то просто в самый конец.

function only_admin()
{
if ( ! current_user_can( 'manage_options' ) && '/wp-admin/admin-ajax.php' != $_SERVER['PHP_SELF'] ) {
                wp_redirect( site_url() );
	}
}
add_action( 'admin_init', 'only_admin', 1 );

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

Данная функция всегда у меня под рукой. Я ставлю ее на 80% тем что создаю. Чаще всего заказчики не хотят давать доступ в консоль даже авторам. Они устанавливают плагины личных кабинетов, что дают возможность настроить профиль без доступа в консоль. Так же, данная функция помогает частично обезопасить ваш сайт, от нежелательного доступа. Надеюсь данный материал вам поможет и вы воспользуетесь ним в своих проектах.

На этом все, спасибо за внимание. 🙂




Если Вам был полезным мой труд, можете поддержать сайт :)


Оцените статью
  1. 5
  2. 4
  3. 3
  4. 2
  5. 1
Проголосовало: 2, в среднем: 5 из 5

Опубликовано 2 комментария

  • Александр
    Комментариев: 1

    Это конечно хорошо но это будет работать до ближайшего обновления шаблона...

    • Виталий
      Комментариев: 473

      Я даже не знаю что вам ответить 🙂 Если человек уже занимается правкой файлов и четко понимает что делает с темой, то ничего у него не слетит. На вскидку, как минимум 2 способа не беспокоится за обновление.
      1. Сделать дочернюю тему - http://gnatkovsky.com.ua/dochernie-temy-wordpress.html
      2. Сделать мини плагин - http://gnatkovsky.com.ua/kak-sozdat-plagin-dlya-wordpress.html
      Если для человека все это космос, то вряд ли он будет вносить такие правки как запрет всем кроме админа, да и вообще любые правки в тему, ведь даже маленькая строчка в любом файле темы исчезнет после обновления 🙂

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

Заполните поля ниже. Ваш e-mail не будет опубликован. Обязательные поля помечены *

Уважаемые пользователи! При добавлении комментариев на сайт Вам следует соблюдать правила указанные под формой отправки комментариев.

Соблюдайте добавления комментариев

Это не спам *

Нажмите, чтобы добавить код в комментарий
X

Привет дорогой друг

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