Что такое wp-cron? Это планировщик задач в WordPress. Можно найти его файл в корне сайта wp-cron.php
. Код планировщика срабатывает каждый раз когда заходят посетители на сайт. В его задачи входит слежение за некоторыми функциями, wp-cron участвует в планировке публикаций, отправке писем, очищение ревизий, проверяет обновления системы, плагинов и другие вещи. Если смотреть файл логов сайта, то можно увидеть запрос типа https://site.net/wp-cron.php?doing_wp_cron=1587985610.8804335825805664212500
.
Такие запросы могут формировать большую нагрузку на сервер, особенно если посетителей много, а хостинг недорогой. Получается, чтобы снизить нагрузку нужно отключить самопроизвольное срабатывание wp-cron’а и перенести кроны для выполнения средствами cPanel (тут лучше уточнить у хостера, если применяется другая система, не cPanel).
Как отключить и перенести wp-cron
Чтобы отключить кроны, нужно в файл wp-config.php
вставить код define('DISABLE_WP_CRON', true);
. После чего нужно включить wp-cron на сервере. Для этого заходим в панель cPanel => раздел «Расширенный» => «Запланированные задания». Дальше, в запланированных заданиях нужно выбрать время срабатывания крона — можно выбрать заготовку «Общие параметры» (раз в день, 2 раза в день, раз в час и т.д.). Какое время срабатывания выбирать? Думаю, что 1-2 раза в день — достаточно. Далее в поле «Команда:» вставляем curl "http://site.net/wp-cron.php?doing_wp_cron"
и нажимаем кнопку «Добавить». Всё.