Поскольку WordPress должен работать на всех различных платформах, ОС и конфигураций, он не может рассчитывать, что служба cronjob будет на сервере, который может обрабатывать запланированные задачи. Вот почему разработчики CMS WordPress создали обходной путь – файл wp-cron.php в основной папке, WordPress запускает каждый раз, когда кто-то загружает страницу. Затем он проверяет, есть ли запланированное задание, которое должно быть сделано, и выполняет его в случае необходимости.
Тем не менее, в некоторых случаях этот файл может стать объектом атаки DOS или кэширования плагинов, которые могут помешать его исполнению, которое может вызвать или много нагрузки на сервер или запланированные задания не могут выполняться надлежащим образом и своевременно. Вот почему, вы можете заменить этот файл на постоянное выполнение с работой в режиме реального крона.
Во- первых, вам необходимо отключить файл, чтобы он не запускался каждый раз, когда кто – то загружает страницы. Для этого откройте файл wp-config.php в корневой папке WordPress и добавьте эту строку в конце, перед закрытием тега ?>:
DEFINE ( 'DISABLE_WP_CRON', TRUE);
После того, как вы сделаете это, вам нужно настроить реальную крон и выполнить этот файл. Если Вы не хотите, чтобы крон вызвался слишком часто, тогда поставьте 30 минут, это должно быть хорошо для большинства веб – сайтов. Для этого, войдите в свой CPanel и перейти к инструменту CronJob, который находится в вкладке Advanced.
Затем добавьте следующую команду, которая будет выполняться каждые 30 минут:
/usr/local/bin/php /home/user/public_html/wp-cron.php
Вы должны заменить / user / с вашим действительным именем пользователя Cpanel. Инструмент CronJob имеет некоторые из наиболее распространенных расписаний заранее, так что вы можете просто выбрать каждые 30 минуты из раскрывающегося списка и поместите * символ в других.
Если вы хотите, вы можете установить электронную почту, чтобы получить письма о результате работы вашего cronjob. Мы рекомендуем вам сделать это, чтобы убедиться, что задача выполняется должным образом. После того, как вы получите письмо с удачный выполнением wp-cron.php, вы можете удалить свой адрес электронной почты с поля, чтобы прекратить получать эти письма.