Os trabalhos CRON desempenham um papel crucial na gestão de tarefas agendadas em um site WordPress, permitindo a execução automatizada em horários específicos, datas programadas ou intervalos regulares. Exemplos comuns de cron jobs no WordPress incluem agendar a publicação de postagens, verificar atualizações e executar backups de plugins de acordo com uma programação pré-determinada.
No ambiente WordPress, essa funcionalidade é implementada através do WP-Cron, uma ferramenta que simula a funcionalidade de um cron do sistema. No entanto, é importante observar que, dependendo do tráfego do seu site, o uso do WP-Cron integrado pode impactar negativamente o tempo de carregamento da página.
Para otimizar o desempenho do seu site, apresentaremos uma abordagem alternativa que envolve desabilitar o WP-Cron (wp-cron.php) e, em vez disso, utilizar um cron do sistema. Essa mudança pode resultar em uma melhoria significativa no tempo de carregamento da página, garantindo uma execução eficiente e rápida das tarefas agendadas. A seguir, detalharemos como realizar esse processo para otimizar a performance do seu site WordPress.
Problemas de desempenho com WP-Cron
Na HostHP, lidamos com uma variedade de sites exigentes e com alto tráfego, o que nos proporciona uma visão aprofundada dos desafios de desempenho associados ao manipulador Cron integrado do WordPress, conhecido como WP-Cron. É crucial reconhecer que o WP-Cron não opera como um cron job convencional; trata-se, na verdade, de uma implementação criada pelo WordPress para simular as funcionalidades de um cron do sistema.
Um dos principais inconvenientes do WP-Cron é sua natureza não contínua. Por padrão, os acionamentos do wp-cron.php são desencadeados a cada carregamento de página, o que, em sites de alto tráfego, pode acarretar problemas significativos. Em casos nos quais um site não dispõe de trabalhadores PHP em quantidade suficiente, pode ocorrer uma situação na qual uma solicitação é recebida, o WordPress gera o cron, mas este precisa aguardar a disponibilidade de um trabalhador, resultando em atrasos.
O inverso também é verdadeiro: em sites com baixo tráfego, compromissos agendados podem ser perdidos simplesmente porque ninguém carregou a página nesse período.
Uma solução mais eficaz é desabilitar o WP-Cron e adotar o uso do cron do sistema. Essa abordagem opera em um cronograma predefinido e é, inclusive, recomendada no manual oficial do Plugin. Fazer essa transição não apenas melhora o desempenho, mas também oferece uma gestão mais eficiente das tarefas agendadas, proporcionando uma experiência mais consistente para os usuários.
Como desativar o WP-Cron
Para desativar o WP-Cron, insira o seguinte código no arquivo wp-config.php, posicionando-o imediatamente antes da linha que contém a mensagem “Isso é tudo, pare de editar! Feliz blog.” Importante ressaltar: essa ação desativa a execução no carregamento da página, não quando você a chama diretamente através do arquivo wp-cron.php.
Como agendar o cron do sistema
Você deverá agendar a execução do arquivo wp-cron.php diretamente no seu servidor. Se você estiver utilizando um host com cPanel, é possível criar um cron do sistema diretamente no painel de controle. Importante observar: certifique-se de desativar o WP-Cron padrão mencionado anteriormente antes de prosseguir com essa configuração.
Passo 1:
Inicie sessão no cPanel. Na seção “Avançado”, clique em “Cron Jobs”.
Passo 2:
Na área “Adicionar Novo Cron Job”, você terá a opção de escolher entre diversos agendamentos predefinidos, como a frequência de duas vezes por hora ou uma vez por semana. É importante observar que o seu provedor de hospedagem provavelmente impõe um limite na frequência permitida para a execução de cron jobs. A configuração de duas vezes por hora é comumente utilizada em ambientes de hospedagem compartilhada.
Passo 3:
Insira o seguinte comando, substituindo “https://domain.com” pelo seu nome de domínio. Este comando pode ter variações com base na configuração específica da sua hospedagem. Após isso, clique em “Adicionar Novo Cron Job”.
wget -q -O - https://domain.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1
Nesta parte do comando >/dev/null 2>&1
acima é desativa notificações por e-mail. Este tutorial terá novas atualizações para o DirectAdmin, fique atento.
Hedy mascote da Cloudx!