BASH
#bash#cron#wordpress#wp-cron#vps#production

Системный cron: вызов wp-cron.php каждые 5 минут

Строка для crontab — запуск WordPress wp-cron.php через CLI PHP. Надёжная замена WP-Cron на VPS с Nginx.

Как использовать

  1. Убедитесь, что в wp-config.php добавлено define('DISABLE_WP_CRON', true).
  2. Проверьте путь к PHP: which php. Подставьте его и путь к wp-cron.php в строку.
  3. Выполните crontab -e и вставьте строку. Сохраните. Проверка: crontab -l.

На VPS без трафика WP-Cron не выполняется. Системный cron вызывает wp-cron.php по расписанию через CLI — задачи выполняются стабильно.

Базовая строка (каждые 5 минут)

*/5 * * * * /usr/bin/php /var/www/site/public_html/wp-cron.php > /dev/null 2>&1
  • */5 — каждые 5 минут.
  • Полный путь к php (проверка: which php).
  • Полный путь к wp-cron.php в корне сайта.
  • > /dev/null 2>&1 — вывод не пишется в почту и не засоряет логи.

Раз в минуту (нагрузочные сайты)

* * * * * /usr/bin/php /var/www/site/public_html/wp-cron.php > /dev/null 2>&1

Добавление в crontab

crontab -e

Вставьте строку, сохраните и закройте редактор. Проверка:

crontab -l

Должна отображаться добавленная строка. Cron должен быть запущен: systemctl status cron или systemctl status crond.

Подробнее: WordPress: как настроить системный cron вместо WP-Cron.