Как отключить wp-cron в WordPress (и вместо этого использовать настоящее задание Cron)

Хотите отключить wp-cron и заменить его своим настоящий работа cron?

Замена wp-cron собственным заданием cron может помочь вам более надежно выполнять запланированные задачи вашего сайта, а также снизить нагрузку на ваш сервер для сайтов с высоким трафиком.

В этом посте мы объясним, что такое wp-cron и почему вы можете отключить его, если вы не знакомы с этой тактикой. Затем мы шаг за шагом покажем вам, как отключить wp-cron и заменить его настоящим заданием cron.

Если вы уже знакомы с тем, что такое wp-cron и почему вам может потребоваться его отключить, вы можете нажмите здесь, чтобы перейти прямо к руководству.

Что такое wp-cron?

Wp-cron — это файл/функция, которая отвечает за управление срочными задачами вашего сайта WordPress.

Например, предположим, что вы запланировали публикацию публикации в следующую среду в 9:30. Wp-cron следит за тем, чтобы это происходило вовремя (или, по крайней мере, как можно ближе к «своевременному» — подробнее об этом через секунду).

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

Если вы хотите просмотреть все запланированные задачи на вашем сайте, вы можете использовать бесплатный плагин, такой как WP-Crontrol. Если вы пойдете в Инструменты → События Cronвы можете увидеть все автоматические задачи, которые WordPress запланировал для запуска, и частоту их выполнения:

Плагин WP-Crontol позволяет вам видеть задачи перед отключением wp-cron.

Как следует из названия, wp-cron происходит от более общей системы планирования cron, которая используется операционными системами Unix. Однако wp-cron отличается от этих систем планирования, и wp-cron не является настоящей работой cron.

Большая разница в том, что wp-cron запускается только тогда, когда вы или другой человек посещаете ваш веб-сайт (либо во внешнем интерфейсе, либо на панели управления). Всякий раз, когда кто-то посещает ваш сайт, WordPress запускает файл wp-cron.php и проверяет наличие запланированных задач. Если есть задача, то он ее выполнит.

Однако это может создать проблему для сайтов с низким трафиком, поскольку wp-cron запускается только при посещении. Например, предположим, что вы запланировали публикацию на среду в 9:30 утра, но в это время ваш сайт не посещается. Фактически, следующий визит на ваш сайт произойдет не раньше 11:30.

Что ж, в этом случае ваше сообщение не будет опубликовано до 11:30, потому что wp-cron не может работать, когда не было посещений. Временная метка по-прежнему будет отображаться как 9:30 утра, но на самом деле она не появится на вашем сайте до 11:30 утра.

Почему вам следует отключить wp-cron?

Есть две причины отключить wp-cron и заменить его собственным специальным заданием cron:

  1. Надежность – как показано в приведенном выше примере, wp-cron не всегда надежен на сайтах с низким трафиком, поскольку для его выполнения требуется посещение веб-сайта. С помощью настоящего задания cron вы можете настроить выполнение задач каждые X минут. не важно что – даже если нет посещений.
  2. Производительность – на сайтах с высоким трафиком некоторым людям не нравится wp-cron, потому что WordPress запускает файл wp-cron.php почти при каждом посещении. WordPress пытается ограничить это, не запуская его чаще одного раза в 60 секунд, но производительность все равно может снижаться по разным техническим причинам, например, из-за одновременных посещений, которые запускают wp-cron..

Короче говоря, изучение того, как отключить wp-cron, может быть полезно как для сайтов с низким, так и с высоким трафиком, хотя и по разным причинам.

Как отключить wp-cron (и настроить настоящую работу cron)

Теперь, когда вы знаете «что» и «почему», давайте перейдем к «как». Мы покажем вам, как отключить wp-cron, а затем заменить его собственным заданием cron сервера (или другое решение).

Процесс состоит из двух частей:

  1. Вам необходимо отключить встроенную функцию wp-cron, чтобы WordPress не запускал wp-cron.php при каждом посещении. Для этого вам просто нужно добавить строку кода в файл wp-config.php вашего сайта.
  2. Вам необходимо настроить собственное задание cron для вызова wp-cron.php по установленному вами расписанию. Благодаря этому вы можете запускать wp-cron.php по определенному расписанию, независимо от того, получает ли ваш сайт трафик или нет.

Отключить wp-cron в WordPress

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

Чтобы получить доступ к файлу wp-config.php, вы можете:

  • Подключитесь к своему серверу через FTP и найдите файл в корневом каталоге (тот же каталог, в котором находятся папки wp-admin и wp-content).
  • Используйте что-то вроде файлового менеджера cPanel для просмотра файлов вашего сервера из веб-браузера.

Если у вас есть резервная копия вашего сайта и/или исходный файл wp-config.php., добавьте следующий фрагмент кода над строкой с надписью /* Вот и все, прекратите редактирование! Удачной публикации. */

определить(‘DISABLE_WP_CRON’, правда);

Вот так:

Как отключить wp-cron в WordPress

Сохраните изменения и при необходимости повторно загрузите файл.

Как только вы это сделаете, WordPress больше не будет вызывать файл wp-cron.php, когда люди посещают ваш сайт.

Настройте собственное задание cron

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

Есть два способа сделать это:

  1. Вы можете создать собственное задание cron на уровне сервера, используя свой хостинг. Точный процесс зависит от хостинг-провайдера.
  2. Вы можете использовать онлайн-сервис cron, который представляет собой облачный инструмент, позволяющий запускать задание cron с использованием серверов службы. Обычно эти услуги имеют ограниченные бесплатные планы, поэтому вам, возможно, придется заплатить. Благо, даже платные услуги вполне доступны (например, 12 долларов в год).

Я покажу вам, как настроить оба метода, но вам нужно использовать только один из этих методов.

Настройте задание cron сервера через ваш хостинг

Процесс настройки задания cron сервера зависит от вашего хоста. Некоторые делают это очень легко, а другие нет.

Я буду использовать cPanel для этого примера, потому что это самое популярное решение, но я рекомендую обратиться к документации поддержки вашего хостера, если ваш хостинг не использует cPanel или если вы не уверены, где найти эту функцию (или если ваш хост вообще это позволяет).

Чтобы начать, войдите в панель управления хостингом и перейдите в cPanel. В интерфейсе cPanel вы должны найти инструмент под названием Крон Джобс (или что-то подобное). Обычно это под Передовой категория, но она может отличаться в зависимости от вашего хоста.

Выберите этот инструмент:

Инструмент cron cPanel

На следующей странице найдите Добавить новую работу Cron раздел. Вы должны увидеть опции для указания времени, а также Команда.

Время зависит от вас, но обычно запуск каждые 30 минут — хорошая отправная точка, особенно на виртуальном хостинге. Фактически, некоторые общие хосты не позволяют запускать их чаще..

Ты можешь выбрать Дважды в час из Общие настройки раскрывающийся список, который предварительно настроит остальные параметры тайминга. Или вы можете использовать Crontab.гуру чтобы сгенерировать синтаксис самостоятельно — вам просто нужно будет ввести данные в соответствующие поля.

Затем добавьте следующую строку кода в файл Команда коробка:

wget -q -O – >/dev/null 2>&1

Обязательно замените фактический URL-адрес вашего веб-сайта..

Например, если у вас есть веб-сайт, правильная команда будет такой:

wget -q -O – >/dev/null 2>&1

Создание нового задания cron в cPanel

Обязательно нажмите кнопку Добавить новую работу Cron кнопку, чтобы сохранить задание cron. Затем вы должны увидеть его в списке Текущие задания Cron ниже.

Используйте онлайн-сервис cron

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

Здесь есть несколько популярных вариантов, в том числе следующие:

Для этого урока мы будем использовать EasyCron.

EasyCron бесплатен для ежедневных вызовов cron до 200 с максимальным интервалом в 20 минут (который позволяет запускать одну задачу каждые 20 минут каждый день), чего должно быть достаточно для одного сайта WordPress. Платные планы также вполне доступны, их стоимость начинается всего с 12 долларов. в год.

Для начала, Зарегистрировать бесплатный аккаунт.

Затем нажмите кнопку + Работа Крон кнопка в интерфейсе EasyCron:

Создайте новое задание cron после отключения wp-cron.

Затем вы увидите всплывающее окно, в котором сможете настроить задание cron.

в URL-адрес для вызова поле введите , обязательно заменяя его фактическим URL-адресом веб-сайта.

Затем под Когда выполнятьвыбирать Каждые 30 минут (при необходимости вы можете выбирать чаще, но 30 минут — хорошая отправная точка для большинства веб-сайтов.).

Затем нажмите Создать задание Cron чтобы сохранить настройки и запустить задание cron:

Как добавить задание cron с помощью EasyCron

Сделанный!

Отключите wp-cron сегодня для более надежного планирования задач.

Wp-cron — это встроенная система планирования WordPress, которая обеспечивает своевременное выполнение различных задач вашего сайта, таких как запланированные публикации в блоге.

Однако встроенная функция имеет некоторые недостатки с точки зрения надежности (для сайтов с низкой посещаемостью) и производительность (для сайтов с высокой посещаемостью). По этим причинам вы можете отключить wp-cron и заменить его настоящим заданием cron, что мы и показали вам в этом посте.

Чтобы узнать о других способах повышения производительности вашего сайта, ознакомьтесь с нашим полным руководством по повышению производительности WordPress.

У вас все еще есть вопросы о том, как отключить wp-cron и заменить его настоящим заданием cron? Дайте нам знать об этом в комментариях!

Бесплатное руководство

4 основных шага к ускорению
Ваш сайт WordPress

Следуйте простым шагам из нашей мини-серии из 4 частей.
и сократить время загрузки на 50-80%. 🚀

Похожие записи

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *