Этот прием можно использовать как для отдоенного сайта, так и для мультисайта (сети сайтов). Лучшее решение — настроить один системный Cron для всей сети, который будет запускать обработку событий для всех сайтов.
Статья с инструкциями по CronTab от хостера >>
Самый простой вариант
Для простоты я подготовил для вас простую команду, которая подходит и для обычной установки вордперсс и для режима мультисайта. Просто вставьте ее и все будет работать отлично.
- Зайдите в CronTab в панели управления Бегет
- Вкладка «Мастер заданий», выберите в выпадающем меню Запрос по протоколу HTTPS
- В поле справа появится текстовая запись-шаблон, нужно туда вставить адрес
https://ваш_сайт.ru/wp-cron.php?doing_wp_cron&network=1
пример
https://bot.troshin-tools.ru/wp-cron.php?doing_wp_cron&network=1
Обратите внимание, что адрес прописывается между одинарными кавычками

В итоге у вас должна получится следующая запись
wget -O /dev/null -t 1 -q 'https://bot.troshin-tools.ru/wp-cron.php?doing_wp_cron&network=1'
Дальше настраивается как часто запускать проверку Cron заданий в вашем вордпрессе.
Предлагаю поставить каждые 5 минут
- Сначала нажимаем на минуты и ставим Каждую 5-ю минуту
- Потом Часы — Каждый час


В итоге ваш мастер будет выглядеть как на скрине ниже. Нажимаем «Добавить задание». Если надо, то сделайте себе пометку в соответствующем поле. Если у вас много сайтов на аккаунте, то это бывает полезно.

В поле ниже мастера у вас появится список Cron заданий, вы можете их включать и выключать, редактировать.

Все теперь сообщения в бота будут отправляться надежно. даже если сайт будет с нулевой посещаемостью
Настройте тестовую серию писем, настройте минимальную задержку между письмами (например, 1 минута), запустите бота и ждите пока вам придет вся серия.
Напоминаю, что по умолчанию в коде прописана отправка сообщений с интервалом 2 минуты, поэтому лаже при задержке 1 минута серия писем будет приходить каждые 2 минуты не чаще. Но есть возможность сделать отправку с задержкой 0 минут, тогда они придут подря.
Как это работает:
- Создаете один cron-запрос на сервере, который будет обращаться к главному сайту сети
- В обработчике добавляете перебор всех сайтов сети и запуск их cron-заданий
Пример cron-команды (каждые 5 минут) для одиночного сайта
bash
*/5 * * * * wget -q -O - https://ваш-сайт/wp-cron.php?doing_wp_cron >/dev/null 2>&1
Аналогичное задание, но для всей сети сайтов (в режиме мультисайта)
Преимущества:
- Один cron для всей сети
- Не нужно настраивать отдельно для каждого сайта
- Экономия ресурсов сервера
- Централизованное управление
bash
*/5 * * * * wget -q -O - "https://ваш-сайт/wp-cron.php?doing_wp_cron&network=1" >/dev/null 2>&1
Ключевой параметр &;network=1 — включает обработку всех сайтов сети при вызове wp-cron.php.
- WordPress автоматически обходит все активные сайты сети и запускает их отложенные задачи.
- Каждый бот получит свои изолированные cron-события (
tg_leads_bot_process_scheduled_messagesи другие).
Если сайтов очень много (100+), возможны таймауты. В этом случае добавьте в cron параметр &limit=20, чтобы обрабатывать по N сайтов за раз:
bash
*/5 * * * * wget -q -O - "https://ваш-сайт/wp-cron.php?doing_wp_cron&network=1&limit=20" >/dev/null 2>&1
Если не получается прописать команду в Cron (можно в ручную или через мастер), то обратитесь в поддержку. Или же вы можете заказать всю настройку под ключ у меня, что бы не разбираться во всем самостоятельно.
