Периодически владельцы сайтов на wordpress начинают жаловаться на повышенную нагрузку создаваемую файлом wp_cron.php. В access-логе сервера это выглядит вот так:

192.168.0.1 - - [14/Dec/2014:23:11:45 +0200] "POST /wp-cron.php?doing_wp_cron=xxxxxxxxx.yyyyyyyyyyy HTTP/1.0" 200 0 "-" "WordPress/4.0.1;
192.168.0.1 - - [14/Dec/2014:23:13:28 +0200] "POST /wp-cron.php?doing_wp_cron=xxxxxxxxx.yyyyyyyyyyy HTTP/1.0" 200 0 "-" "WordPress/4.0.1;

И таких записей может быть несколько тысяч.

Для чего нужен wp-cron.php?

wp-cron.php — это, по сути, автоматизированный суррогат настоящего крона для случаев, когда сайт размещён на каком-нибудь убогом хостинге, не разрешающем использовать crontab («Планировщик задач») и предназначен для выполнения рутинных автоматических задач вроде публикации записей с отложенным временем публикации, очистка «корзины», отправка уведомлений (pingbacks) блогам упомянутым на сайте, очистка кеша и так далее.

С одной стороны — это хорошо, так как независимо от прямоты рук автора сайта и качества хостинга все эти, без сомнения, жизненно важные задачи будут выполняться. С другой же стороны — необоснованно частый вызов скрипта wp-cron.php в процессе работы сайта приводит к повышенной нагрузке на сервер, замедлению работы сайта.

Как устранить ошибку с нагрузкой от wp-cron.php?

Откройте файл wp-config, который расположен в папке сайта и после строки define (‘WPLANG’, ‘ru_RU’);  или $table_prefix = ‘wp_’; (не принципиально)  добавьте новую строку:

define('DISABLE_WP_CRON', true);

Это отключит самовольное выполнение псевдокрона и снизит нагрузку.

Обязательно после этого в «планировщике задач» (cron) Вашего хостинга добавьте задачу в виде:

0 */2 * * *  /usr/bin/wget -O - -q -t 1 'http://имясайта.com/wp-cron.php?doing_wp_cron'

где,

www.имясайта.com  — это адрес Вашего сайта.

На разных хостингах нюансы постановки задачи могут различаться.

Но общая суть такова — нужно через wget или curl открывать ссылку http://имясайта.com/wp-cron.php?doing_wp_cron с периодичностью раз в несколько часов.

Чем выше создаваемая нагрузка — тем реже нужно запускать задачу

Всё. В большинстве случаев — этого более чем достаточно для устранения ошибки.