As tarefas CRON são utilizadas ​​para agendar tarefas em horários, datas ou intervalos fixos e periódicos em seu site WordPress. Alguns exemplos de tarefa cron no WordPress podem envolver o agendamento de uma publicação, a verificação de atualizações ou um plugin de backup em execução em um calendário predefinido.

No WordPress, isso é feito pelo WP-Cron, que é utilizado para simular um sistema cron. Contudo, dependendo da quantidade de tráfego do seu site, o uso do gerenciador cron integrado pode impactar os tempos de carregamento da sua página. Por isso, hoje iremos mostrar como desativar o WP-Cron (wp-cron.php), utilizando em substituição um sistema cron para ter um desempenho mais rápido.

Problemas de Desempenho com o WP-Cron

Na Kinsta, lidamos com sites muitos exigentes e com elevado tráfego. Por causa disso, já encontrámos muitos problemas de desempenho com o gerenciador Cron interno do WordPress: o WP-Cron. Em primeiro lugar, é importante entender que o WP-Cron não é uma verdadeira tarefa cron, é simplesmente o que o WordPress criou para imitar o que um sistema cron faz.

O WP-Cron não é executado continuamente. Por padrão, o wp-cron.php é acionado em cada carregamento de página, o que, em sites de alto tráfego, pode provocar problemas. Se um site não tiver PHP Workers suficientes, por vezes surgirá uma solicitação, o WordPress gerará o cron , mas o cron terá de esperar pelo funcionário e, por isso, se limita a ficar estático.

O cenário inverso também é verdadeiro. Se um site tiver um tráfego reduzido, os agendamentos poderão ser perdidos por ninguém ter carregado uma página.

Uma abordagem melhor é desativar o WP-Cron e usar o sistema. Isso é executado em um horário predefinido e é até mesmo recomendado no manual de plugins.

Como Desativar o WP-Cron

Para desativar o WP-Cron, adicione isso ao seu arquivo wp-config.php logo antes da linha que diz: “That’s all, stop editing! Happy blogging.” Nota: Isso impede que ele seja executado no carregamento da página, não quando você o requere diretamente via wp-cron.php.

define('DISABLE_WP_CRON', true);
Desativar o WP-Cron

Desativar o WP-Cron

Como Agendar o Sistema Cron

Depois precisará de agendar o wp- cron.php no seu servidor. A boa notícia é que, se você for um cliente Kinsta, nosso cron do lado do servidor dispara wp-cron.php a cada 15 minutos, por padrão. 💪 Isso executará todos os crons agendados do WordPress. E, caso seja necessário, você pode aumentar a frequência entrando em contato com nossa equipe de suporte.

Se está familiarizado com o SSH, também pode seguir o nosso tutorial sobre como gerenciar servidores cron com linha de comando na Kinsta. Todos os nossos planos de hospedagem incluem acesso ao SSH.

Se não for um cliente Kinsta, recomendamos verificar esses recursos para aprender a configurar os sistemas cron:

Criar Tarefa Cron no cPanel

Se estiver usando um host com o cPanel, poderá também criar um sistema cron no painel de controle. Nota: primeiro desative o WP-Cron padrão.

Passo 1

Entre no cPanel. Na seção Avançado, clique em Tarefas Cron.

Tarefas cron no cPanel

Tarefas cron no cPanel

Passo 2

Na seção Adicionar Nova Tarefa Cron, pode escolher vários agendamentos predefinidos, como duas vezes por hora ou uma vez por semana. Provavelmente, o seu provedor de hospedagem tem um limite para a frequência de execução de tarefas cron. Duas vezes por hora é comum para hosts compartilhados.

Configurações da tarefa cron no cPanel

Configurações da tarefa cron no cPanel

Passo 3

Adicione esse comando. Substitua https://domain.com pelo seu nome de domínio. Esse comando pode variar ligeiramente com base na forma como a sua hospedagem está configurada. Depois clique em “Adicionar Nova Tarefa Cron”.

wget -q -O - https://domain.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1
Adicionar nova tarefa cron no cPanel

Adicionar nova tarefa cron no cPanel

A parte >/dev/null 2>&1 do comando acima desativa as notificações por email.

Programar Crons com uma Solução de Terceiros

Se não estiver confortável para agendar tarefas no seu servidor ou se seu provedor de hospedagem não faculta esse acesso, poderá também usar uma solução de terceiros, como o EasyCron.

5
Shares