Последнее обновлене - 15 января 2023 в 16:48
В WordPress существует прекрасная возможность включить режим обслуживания сайта на некоторое время. В этом случае сайт переводится в так называемое состояние WordPress Maintenance Mode, когда используется функция wp_maintenance. Для чего это всё? Просто, администратор сайта имеет возможность вносить какие-либо глобальные правки, которые будут скрыты от посторонних глаз до решения проблемы. Ну а посетитель увидит лишь страницу с сообщением о том, что сайт (блог) находится на техническом обслуживании.
Содержание:
Пользоваться этим функционалом при каждом удобном случае вовсе не обязательно. Не стоит включать WordPress Maintenance Mode, если, к примеру, вы заметили очепятку в тексте записи. Ну а если проводятся работы, скажем, по редизайну сайта? Тогда, скорее всего, есть смысл перевести сайт в режим обслуживания, чтобы посетители не попали на перекошенные страницы.
Чтобы включить режим обслуживания сайта под управлением WordPress, можно пойти разными путями. Для этого есть несложные способы и совсем несложные. Выбирать только вам.
При помощи файла .maintenance
Спрятать сайт на некоторое время можно при помощи всего лишь одного файлика. Для этого, создадим в корневой директории веб ресурса файл с названием .maintenance и сохраним его в кодировке UTF-8 без BOM.
В содержимое файла необходимо вставить такую строку:
<?php $upgrading = time();
В результате, неавторизованный пользователь увидит следующее сообщение при переходе по ссылкам, ведущим на сайт: «Сайт ненадолго закрыт на техническое обслуживание. Зайдите через минуту.». Такую запись формирует WordPress и внести сюда какие-либо изменения в соответствии со своими потребностями не получится.
Чтобы вновь перевести сайт в исходное состояние, можно просто удалить файл .maintenance или переименовать его. Например, в .maintenance1.
При помощи файла functions.php
В данном случае ничего нового создавать не придётся. Необходимо всего-навсего открыть файл functions.php и дополнить его содержимое следующими строками кода:
// Включить режим обслуживания WordPress Maintenance Mode
function wp_maintenance_mode() {
if (!current_user_can('edit_themes') || !is_user_logged_in()) {
wp_die('<h1>Мой сайт находится на обслуживании</h1><br />Друзья! Мой сайт никуда не пропал, а просто временно находится на плановом обслуживании. Пожалуйста, зайдите позже. Если у вас есть что-то срочное, то пишите на email: hobo@hoboweb.ru или сюда: <a href="https://www.facebook.com/HoboWEB" title="Страница на FB" rel="noopener" target="_blank">https://www.facebook.com/HoboWEB</a>.');
}
}
add_action('get_header', 'wp_maintenance_mode');
«Чем отличается этот способ от предыдущего?» — спросите вы. Такой вариант включения WordPress Maintenance Mode более интересен. Взгляните на 4 строку кода. Если вы успели заметить, сюда легко вписать уже любой информационный текст, вставить телефоны, email адреса, ссылки на социальные сети, при помощи которых можно связаться с администратором сайта.
Взгляните для примера. Вот что у меня получилось.
При помощи файла .htaccess
Если в первых двух примерах вы, как администратор сайта, имеете доступ к его административной части, то при использовании файла .htaccess войти в админку не получится даже у вас. Дело в том, что все запросы к сайту будут перенаправляться на файл maintenance.html, с помощью которого выводится сообщение о режиме обслуживания.
Как сделать? В корневой директории найти файл .htaccess, переименовать его, например в .htaccess-old. Создать там же, то есть в корне сайта новый файл .htaccess с таким содержанием:
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} !^/maintenance\.html$
RewriteRule ^(.*)$ https://yoursite.com/maintenance.html [R=307,L]
Кроме того, в той же директории уже должен быть файл maintenance.html, в котором содержится сообщение о переводе сайта в режим обслуживания.
При помощи плагинов
Наиболее простым способом включения WordPress Maintenance Mode является использование плагина. Здесь всё как обычно. Установил плагин из официального репозитория WordPress, активировал и произвёл предложенные настройки.
Какой именно плагин? Какой понравится, такой и используйте. Просто вбейте в поисковую строку страницы с плагинами слово «Maintenance» или «Coming Soon», и Вордпресс выкатит целый список подобных плагинов. Выбирайте по отзывам, функционалу плагина, а также обращайте внимание на его совместимость с вашей версией WordPress.
Одним из таких плагинов является WP Maintenance Mode. На мой взгляд, это просто Porsche среди подобных плагинов, т.к. он обладает обширным, на любой вкус функционалом и удобен в настройках.
С его помощью выбирайте дизайн заставки, определяйте доступ для различных пользователей, покажите посетителям сайта при помощи таймера обратного отсчёта количество времени, которое осталось до возобновления работы сайта. Можно даже настроить чат-бот и установить на заставку с предупреждением о ведущихся работах.
Всем высоких конверсий on the WEB!
О супер, у меня получилось поставить сайт в режим обслуживания, спасибо.
Ну и отлично. Иногда необходимо провести обслуживание сайта.
Спасибо за информацию. Помогли.
Отлично! Рад, что информация оказалась полезной.