Чистим do_pings в WordPress

Статьи 25.06.2022 (обновлено)

Когда ваш сайт WordPress настроен на использование пингов, база данных может заполниться большим количеством записей do_pings WP Cron. В этой статье приведена пара быстрых способов их очистки: отключение функциональности или удаление записей do_pings из базы данных.

Отключение do_pings

Записи do_pings добавляются только тогда, когда в общих настройках WordPress включены пинги.

Мы можем отключить это через:

Settings -> Discussion -> Attempt to notify any blogs linked to the article

Отключение этой настройки означает, что ваш сайт не будет пинговать все ресурсы, на которые есть ссылки. Ничего страшного, но имейте в виду.

Удаление do_pings

Чтобы удалить все существующие экземпляры do_pings из базы данных, вы можете добавить следующую строку кода в файл functions.php вашей темы:

wp_clear_scheduled_hook('do_pings');

Затем перезагрузите любую страницу на вашем сайте, чтобы выполнить эту строку кода. Это удалит все экземпляры do_pings. Далее вы можете оставить строку или удалить ее, решать вам.

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

Отключение и удаление

Вот альтернативный метод отключения и полного удаления функции do_pings. Добавьте следующий сниппет в файл функций вашей темы:

if (isset($_GET['doing_wp_cron'])) {
	remove_action('do_pings', 'do_all_pings');
	wp_clear_scheduled_hook('do_pings');
}

Этот фрагмент кода отключает do_pings каждый раз, когда WordPress «выполняет» крон (cron), а также удаляет все существующие записи do_pings в базе данных. Ваш опыт может быть иным, поэтому хорошо протестируйте это перед запуском.

Некоторые замечания, которые могут быть применимы при работе с пингом/кроном:

  • Пинги происходят только во время процесса cron.
  • Пинги могут быть медленными из-за сайтов, которые вы пингуете.
  • Функция wp_update_post() всегда устанавливает график выполнения действия do_pings.

Сергей Ермилов
Опубликовано 08.06.2022
Категория: Статьи
Теги:

Добавить комментарий

Ваш адрес email не будет опубликован.