Режим обслуживания сайта

Тестируете новую конструкцию php на своем блоге? Или улучшаете дизайн, экспериментируя с css-стилями вашей темы? Тогда вам просто необходимо скрыть на это время Ваш сайт от посторонних глаз. Решается эта задача, как с помощью простенькой функции, так и при помощи плагинов, которые добавляют дополнительные возможности при оформлении «морды» сайта, когда включен режим обслуживания.

Рассмотрим простенькую функцию, которую необходимо поместить в файл функций Вашей темы (functions.php) и по мере необходимости включать путем раскомментирования строк. На данном примере строки функции закомментированы. Чтобы функция заработала нужно убрать символы «слеша» и «звездочки» в начале и конце функции.

Мы видим, что функция представляет из себя простое условие проверки пользователя на принадлежность к группе администраторов (наивысшие привилегии) и проверке авторизации на сайте, и если наши заданные условия совпадают, то пользователю доступен обзор сайта, как бэкенд-интерфейса, так и фронтенд-интерфейса. Но если, предположим, это просто посетитель, то при обращении к сайту он будет видеть следующую малоприятную картину:

Сайт в режиме обслуживания

А Вы в то время созерцаете полноценный сайт. Чтобы проверить работу функции обратитесь к сайту с другого браузера или необходимо выйти из под учетной записи администратора. Обращу внимание, что пользователям не принадлежащим к группе администраторов доступен обзор админ-панели, не доступен только обзор сайта (внешний интерфейс).

А теперь полезные плагины, которые расширяют функционал Maintenance-режима. Одним из популярных в этой области, выступает плагин WP Maintenance Mode
После установки которого, в его параметрах можно задать различные условия Maintenance Mode.

Maintenance Mode
Из особенностей:

  • установка обратного отчета времени
  • использование готовых стилей оформления
  • подключение своего стиля для страницы
  • управление ролями пользователей
  • установка автоматического перенаправления (редирект)

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