Как отключить WordPress сайт на техническое обслуживание

Причина вопроса, указанного в названии статьи, может проявляться от самых разных случаев. Реконструкция, какие-нибудь неполадки, обновление функциональности и прочие поводы могут толкнуть на временное отключение сайта. И если посмотреть со стороны разработчиков, то — это правильное решение. Зачем пользователю испытывать неудобство во время технических работ, что явно отобразится на нестабильности ресурса. В сегодняшней статье рассмотрим один вариант, который позволит закрыть доступ к сайту и вывести сообщение с извинениями за неудобство.
Метод, описанный в данной статье, будет реализован с помощью отдельного кода, созданием дополнительных файлов и закачкой их на сервер. В принципе, это стандартная процедура для выполнения какой-либо задачи без использования плагина. Но если в чем-то сомневаетесь, то всегда можете протестировать ту или иную функцию на локальном сервере. Давайте перейдем к делу.
Шаг 1-й.
На первом шаге создадим основной файл. Откройте любой редактор или стандартный блокнот, добавьте в него ниже представленный код и сохраните файл под именем .maintenance (точка вначале обязательна). В процессе обновления платформы, плагинов, тем, WordPress автоматически создает этот файл на время обслуживания. Но в данном случае мы включим технический режим вручную на то время, которое пожелаем. Полученный файл необходимо загрузить в корневую директорию обычно это public_html, там находятся движок WordPress.
После этих действий выйдите из админ-панели (в правом верхнем углу ссылка), перезагрузите страницу, и вы увидите большую надпись на белом фоне во весь экран: «Сайт недоступен и т.д.». В таком режиме он будет находиться до тех пор, пока не удалите ранее созданный файл с сервера. Но вы можете, под ролью администратора, заходить на сайт, как обычно и, вам будет доступно все содержимое. В указанном выше коде есть несколько важных деталей:
Как отключить WordPress на время настройки и наполнения, Урок 2: Интернет магазин WordPress
От момента установки WordPress до запуска Интернет магазина на этой платформе, требуется время. Настройка wordpress, наполнение магазина товарами требует ни один день работ и на этот период нужно отключить сайт магазина WordPress на техническое обслуживание.
Никому не интересен неготовый, пустой Интернет магазин, ни поисковикам, ни покупателям. Более того вредно для продвижения сайта его индексация в не готовом виде. Поэтому, после установки WordPress нужно отключить WordPress на время создания, настройки и наполнения магазина товарами и материалом. О способах отключить WordPress на время настройки и наполнения в этой статье.
Что значит отключить WordPress
Отключить WordPress на время настройки и наполнения это сделать так, чтобы вместо сайта по вашему адресу в браузере открывалась, заставка с текстом о неготовности сайта или о технических работах на сайте.

Стандартная простая заставка техническго обслуживания
2 способа отключить WordPress на время настройки и наполнения
- Первый способ отключить WordPress на время настройки это установить специальный плагин типа Maintenance Mode. Любой из плагинов этого типа создает техническую заставку Maintenance.
Если не хотите ставить лишние плагины, чтобы изначально не перегружать систему, используем второй способ. Вебмастера, такие способы называют «WordPress без плагинов». Показываю самый простой вариант закрыть сайт (магазин) WordPress на техническое обслуживание. Работает на всех версиях системы.
- Открываем текстовой редактор типа Notepad++. Подойдет любой текстовой редактор, за исключением блокнота WordPress. Исключены для редактирования любые Word редакторы;
- Создаем новый файл с однострочным содержанием:
- Сохраняем этот файл в формате UTF-8 без BOM под названием: .maintenance (с точкой вначале);
- Входим в каталог сайта по FTP соединению, используем программы FilleZilla или WinSCP и заливаем созданный файл в корневую папку сайта;
Важно понимать , что этот файл ПОЛНОСТЬЮ закроет магазин и от вашего входа, в том числе. Если нужно открыть магазин, удаляем, а лучше переименовываем этот файл. Согласен, неудобно, зато надежно.
Закрыть магазин от индексации
На время создания и настроек интернет магазина нужно закрыть его от индексации поисковыми системами. Чтобы закрыть магазин WordPress от индексации, в административной панели идем на вкладку Настройки→Чтение и в строке «Видимость для поисковых систем» ставим галочку в чекбокс.

В следующей статье займемся общими настройками интернет магазина WordPress.
Как отключить сайт на WordPress без плагина

Для того что бы отключить сайт написанный на WordPress на время работ или разработки сайта, можно воспользоватся специальным плагином или самостоятельно написав код на php.
Простой вариант с плагином:
Есть такой плагин как WordPress Maintenance Mode — он может переводить ваш сайт в режим технического обслуживания. То есть при переходе на сайт или любую вашу страницу у вас постоянно будет появляться страница с надписью «Сайт находится в режиме технического обслуживания» или «Сайт временно не работает». Также к некоторым страницам можно оставить доступ для пользователей открытым.
Или плагин CGC Maintenance Mode — он также закрывает сайт, но разрешает доступ для определенных IP адресов в настройках.
Свой IP вы можете легко узнать тут _http://2ip.ru/
Также можно выключить сайт, воспользовавшись еще одним способом это установить пароль на сайт или сделать вход только для зарегистрированных пользователей. Для этого можно использовать плагин как Members Only или Registered Users only
Сложный способ без плагина:
Создаем в корне где лежит сайт, файл с именем .maintenance это файл создается wordpress когда идут какие либо обновления движка, после он удаляется.
<?php
function is_user_logged_in() <
$loggedin = false;
foreach ( (array) $_COOKIE as $cookie => $value ) <
if ( stristr($cookie, ‘wordpress_logged_in_’) )
$loggedin = true;
>
return $loggedin;
>
if ( !stristr($_SERVER[‘REQUEST_URI’], ‘/wp-admin/’) && !stristr($_SERVER[‘REQUEST_URI’], ‘/wp-login.php’) && !is_user_logged_in() ) $upgrading = time();
?>
И при входе на сайт вы увидите сообщение «Сайт ненадолго закрыт на техническое обслуживание. Зайдите через минуту.»
Для отключения технического режима сайта, просто удалите файл .maintenance
Также вы можете сами задать любой стиль и текст страницы для этого необходимо создать файл maintenance.php в директории /wp-content/
<?php
wp_load_translations_early();
$protocol = $_SERVER[«SERVER_PROTOCOL»];
if ( ‘HTTP/1.1’ != $protocol && ‘HTTP/1.0’ != $protocol )
$protocol = ‘HTTP/1.0’;
header( «$protocol 503 Service Unavailable», true, 503 );
header( ‘Content-Type: text/html; charset=utf-8’ );
header( ‘Retry-After: 600’ );
?>
<!DOCTYPE html>
<html xmlns=»http://www.w3.org/1999/xhtml»<?php if ( is_rtl() ) echo ‘ dir=»rtl»‘; ?>>
<head>
<meta http-equiv=»Content-Type» content=»text/html; charset=utf-8″ />
<title>Техническое обслуживание</title>
</head>
<body>
<h1>Сайт находится на техническом обслуживании, работа будет восстановлена через несколько минут.</h1>
<h2>Извините за неудобства.</h2>
</body>
</html>
Как закрыть сайт на техническое обслуживание
Maintenance mode (или режим технического обслуживания) — закрытое состояние сайта. С одной стороны — он не работает. С другой — пользователи видят информацию о причинах случившего и ориентировочных сроках решения проблемы.
Данный режим может понадобиться при внедрении и обкатке нового функционала, восстановительных работах и так далее и тому подобное. Стоит отметить, что данный режим включается автоматически при обновлении движка, плагинов, тем оформления.
Рассмотрим варианты решения данной задачи.
Режим обслуживания без помощи плагинов
Режим включения/выключения абсолютно ручной и сводится к добавлению в файл functions.php следующего кода:
, где current_user_can(‘manage_options’) — проверка прав доступа. А конкретно, имеет ли пользователь права редактировать настройки. Если не имеет, стало быть не администратор, а значит закроем для него сайт.
Сам текст «сайт ненадолго закрыт» можно не только изменять, но и оформить на ваш вкус.
Для отключения режима необходимо удалить, либо закомментировать данный код.
Режим обслуживания при помощи плагинов
Существует огромное множество плагинов для WordPress, которые успешно решают данную задачу. Отмечу сразу, что я не сторонник использования бесчисленного количества плагинов.
Во-первых, потому, что каждый из них создает дополнительную нагрузку.
Во-вторых, у каждого плагина свой автор. Некоторые авторы соблюдают API и документацию WordPress. Некоторые нет. Некоторые пишут оптимальный код с минимальным количеством запросов. Некоторые не вдаются в такие дебри и преследуют цель «лишь бы работало». В итоге жить с этим всем придется именно вам. В общем, не рекомендую.
В-третьих, я убежден в необходимости развития и самосовершенствования. Решая поставленную задачу, вы получаете новый опыт и знания. Решая задачу за счет плагина, вы не получаете ни опыта ни знаний. Итак, если не переубедил, пара-тройка плагинов:
WP Maintenance Mode

Настраиваемый плагин страницы-заглушки. Подходит как для стартапов, находящихся в разработке, так и для сайтов, находящихся на тех. обслуживании. Предлагает несколько шаблонов, форму подписки, таймер обратного отсчета, кнопки социальных сетей.
Easy Pie Maintenance Mode

Плагин предлагает 4 шаблона на выбор. Позволяет править текст, устанавливать собственный логотип, редактировать css-код.
Curtain

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