База знаний

Инструкции и ответы на вопросы о хостинге, работе сайтов и приложений

Оптимизация WordPress

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

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

Включите кеширование

Кеширующие плагины заранее генерируют страницы и сохраняют их на дисковом пространстве аккаунта. Это ускоряет загрузку сайта в 2-3 раза. Мы рассмотрим плагин WP Fastest cache.

Установите и активируйте WP Fastest cache. В меню слева появится строка с логотипом плагина и его именем. Кликните на нее для настройки.

Рассмотрим каждый параметр.

  • Кэширование. Отметьте этот пункт, чтобы включить кеширование для сайта.
  • Предподготовка. Файлы кеша генерируется после перехода на страницы сайта. Отметьте этот параметр, чтобы кеш создался автоматически. В открывшемся окне укажите параметры кеширования. В поле «pages per minute» (страниц в минуту) разработчики плагина рекомендуют установить значение от 4 до 6.
  • Новая запись. Чтобы пользователи сайта видели новые посты сразу после публикации, отметьте этот пункт. Достаточно очищать кеш домашней страницы и записей.
  • Обновление записи. Аналогично предыдущему — отметьте этот пункт, чтобы пользователи видели обновления ваших постов сразу после публикации.
  • Кэш в браузере. Отметьте этот пункт, чтобы сохранять копии страниц сайта в браузере посетителей. Это сократит время загрузки сайта.

Нажмите кнопку «Сохранить настройки».


Эффект от внесенных изменений вы увидите через сутки в «Инструментах разработчика» браузера и визуально. За это время большинство страниц сайта будет закешировано.


Очистка кеша

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

Перейдите в раздел «Таймаут кэша», нажмите «Add new rule». В поле «if REQUEST_URI» выберите «Все», «Then» — «Раз в сутки» и сохраните изменения.

Если сайт обновляется нечасто, увеличьте время хранения данных в кеше до нескольких дней.

Отключите ресурсоемкие и ненужные плагины

Причиной медленной загрузки сайтов на WordPress часто становятся установленные плагины. Найдите самый ресурсоемкий с помощью Query Monitor.

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

Нажмите на него, после чего в появившемся нижнем меню выберите раздел «SQL-запросы». Для компонентов укажите фильтр «Не ядро»:

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

После проверки сайта удалите Query Monitor.

Очистите базу данных

WordPress сохраняет ревизии, комментарии и черновики в базе данных. Чтобы очистить базу от ненужной информации, установите плагин WP-Optimize.

Перед использованием плагина создайте резервную копию базы данных в разделе «Сайты» → «Резервные копии» Панели управления хостингом.

Перейдите к настройкам плагина и укажите параметры как на скриншоте. Пункт «Удалить неодобренные комментарии» отмечайте, если вы уже провели модерацию всех поступивших комментариев. Нажмите «Run all selected optimizations»

Очистка базы данных от ненужной информации может увеличить скорость работы сайта.

Настройте планировщик WP-cron

WP-cron — встроенный в CMS планировщик задач. Его активирует обращение к любой странице сайта. Если задание должно выполниться в 10:30, но в этот момент посетителей на сайте нет, его запуск отложится. Оно выполнится, когда на сайт кто-нибудь перейдет.

Такая работа планировщика вызывает всплеск потребления ресурсов. Чтобы этого не происходило, отключите WP-cron в CMS и вызывайте скрипт через планировщик в Панели управления.

Для отключения добавьте в файл wp-config.php (он расположен в корневой директории сайта) сразу после открывающего тега PHP строку с текстом:

define('DISABLE_WP_CRON', true);

Затем перейдите в раздел «Сайты» → «Планировщик Cron» Панели управления и добавьте задание:

1 * * * * /usr/local/bin/wget -q -O /dev/null http://domain.ru/wp-cron.php

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

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

Отключите HeartBeat API

HeartBeat API — самый ресурсоемкий процесс в WordPress. Он организует одновременную работу нескольких пользователей в административной части сайта.

Если у сайта один администратор, отключите эту функцию. Поможет в этом плагин Heartbeat Control. Установите и активируйте его в разделе «Плагины» административной части и перейдите в «Настройки» → «Heartbeat Control Settings».

Отключите HeartBeat API полностью, выбрав опцию «Disable Heartbeat» для всех доступных локаций сайта:

Или измените интервал запросов с помощью «Modify Heartbeat». Достаточно установить ограничение в 60 секунд:

Не забудьте сохранить внесенные изменения.

Если после отключения Heartbeat вы заметили неполадки в работе сайта, включите его обратно для раздела «Frontend».

Отключите ревизии

Wordpress сохраняет черновики записей и их предыдущие версии (ревизии). Они создаются автоматически, нагружая базу данных и замедляя работу WordPress. Отключите ревизии и увеличьте интервал создания черновиков через файл wp-config.php. Он расположен в корневой директории сайта.

Для отключения ревизий добавьте сразу после открывающего тега PHP строку:

 define('WP_POST_REVISIONS', false);

Для увеличения интервала создания черновиков добавьте:

 define('AUTOSAVE_INTERVAL', 1200);

Если после выполнения всех рекомендаций ваш сайт все еще работает медленно, обратите внимание на график потребления ресурсов в Панели управления. Возможно, ваш проект нуждается в более серьезном тарифном плане. При возникновении вопросов обращайтесь в cлужбу поддержки: мы поможем разобраться.

Была ли эта инструкция полезной?