Como gerenciar trabalhos de cron do WordPress

Publicados: 2021-05-14
wordpress cron
Siga @Cloudways

Muitos desenvolvedores de WordPress, especialmente iniciantes, têm uma pergunta comum "o que é o cron do WordPress" com "como gerenciar tarefas do cron do WordPress?" um segundo próximo.

A resposta é simples: use qualquer um dos métodos de gerenciamento de tarefas cron do WordPress que irei descrever neste artigo.

  • O que é WordPress Cron?
  • Como gerenciar um cron job do WordPress
    • Como gerenciar trabalhos de cron do WordPress com plug-in
      • Etapa 1: instalar o plug-in de controle WP
      • Etapa 2: visualizar e compreender os eventos cron
      • Etapa 3: Editar Evento Cron
      • Etapa 4: Adicionar um intervalo de tempo personalizado
      • Etapa 5: Adicionando um Novo Evento Cron
    • Como gerenciar trabalhos de cron do WordPress com WP CLI
  • Como configurar um Real Cron Job

Cron é um utilitário UNIX padrão para agendar a execução de tarefas (script ou comando) em uma hora, data ou intervalo específico. A tarefa que ele vai executar é conhecida como cron job. Como você pode imaginar, o objetivo de um cron job é automatizar tarefas repetitivas para que você possa usar seu tempo de forma mais produtiva.

No entanto, o cron job do WordPress é ligeiramente diferente do cron padrão, e é por isso que antes de mergulhar na ação e no processo, você precisa entender o que é um cron do WordPress e como ele funciona.

O que é WordPress Cron?

O WordPress tem seu próprio sistema cron para agendar tarefas, como verificar se há atualizações, agendar uma postagem para publicação e excluir comentários da lixeira. Todos os cron jobs são gerenciados pelo WP-Cron.

Embora o nome (e a ideia principal) venha do UNIX cron, o cron do WordPress não funciona assim e usa intervalos para agendamento de tarefas. Os intervalos de tempo padrão fornecidos pelo WordPress são de hora em hora, duas vezes ao dia, diariamente e semanalmente. Aqui, as tarefas baseadas em tempo dependem dos usuários que visitam seu site, o que significa que o cron do WordPress só será executado se um usuário visitar seu site.

Em outras palavras, o cron do WordPress é executado quando a página é carregada. Às vezes, isso não é tão confiável, e é por isso que muitos usuários preferem um cron job no nível do servidor ao invés do WP-Cron job.

Neste artigo, vou mostrar como gerenciar tarefas cron do WordPress e configurar uma tarefa real para o seu site WordPress.

Como Gerenciar Jobs de Cron do WordPress

Há muitas maneiras de configurar e gerenciar tarefas cron do WordPress, mas vou mostrar dois métodos populares.

O primeiro usa um plug-in de gerenciamento de cron como WP Crontrol que permite adicionar, modificar e gerenciar tarefas cron do WordPress diretamente do painel do WP. Você também pode criar um cron job, construir ganchos e funções e definir intervalos de tempo personalizados para as tarefas.

E o segundo método é com WordPress CLI.

Como gerenciar trabalhos de cron do WordPress com plug-in

Usarei o plugin WP Crontrol que permite visualizar e controlar o cron do WordPress para o seu aplicativo WordPress. É o plugin popular usado para lidar com tarefas do WP cron e tem mais de 100.000 instalações ativas.
Este é o método mais fácil de gerenciar tarefas cron do WordPress e você pode rapidamente visualizar, editar, criar, excluir e fazer muito mais com eventos cron do WordPress.

Então vamos começar!

Etapa 1: instalar o plug-in de controle WP

Assim como qualquer outro plugin, você precisa instalar o WP Crontrol do repositório do plugin e ativá-lo. Depois de instalado, você notará que uma nova opção “Eventos Cron” apareceu na guia Ferramentas .

eventos cron

Etapa 2: visualizar e compreender os eventos cron

Em seguida, você precisa clicar em Eventos Cron e verá uma lista de eventos cron que estão sendo executados em seu aplicativo WordPress.

lista de eventos cron

Nesta seção, você pode executar, editar e excluir seus eventos cron. Você verá esta opção ao passar o mouse sobre qualquer evento cron.

Você também encontrará informações úteis sobre esses cron jobs e identificará rapidamente qual cron job é usado para qual propósito e muito mais. Na primeira coluna, o Gancho mostra o nome do gancho usado pelo núcleo do WordPress ou qualquer plugin. Por exemplo, o prefixo “ wp ” simplesmente mostra que é um cron do núcleo do WordPress. Você também notará que não há opção para deletar esses eventos cron, no entanto, você pode usar as opções editar e executar agora . Da mesma forma, para seus plug-ins, você notará outros prefixos sendo usados ​​(por exemplo, para WooCommerce, “wc” ou “woocommerce”).

A segunda coluna Argumentos contém apenas os argumentos que são passados ​​para as funções de gancho.

A terceira coluna mostra quando este cron job será executado na próxima vez.

A quarta coluna Ação mostra qual ação este cron vai realizar (a “função” do cron job).
A última coluna define os tempos de recorrência dos cron jobs. Este é basicamente o intervalo de tempo para a tarefa agendada.

Etapa 3: Editar Evento Cron

Agora vamos editar um cron job WP para testar este plugin.

Vá até o nome de um gancho e clique em editar . Uma nova seção “ Editar evento Cron ” aparecerá, onde você verá diferentes campos. No meu caso, editei o gancho “wp_privacy_delete_old_export_files”. Em seguida, alterarei a recorrência desse cron job para “A cada quinze minutos”.

editar eventos cron

Etapa 4: Adicionar um intervalo de tempo personalizado

A seguir, mostrarei como adicionar um intervalo de tempo personalizado para seus eventos cron. Para isso, clique na aba “ Cron Schedule ” e aparecerá uma nova tela onde você verá os detalhes dos intervalos de tempo programados. Em seguida, role para baixo até o final, onde você verá “ Adicionar Cron Schedule ”. Preencha os campos e clique em Adicionar Cron Schedule .

adicionar cronograma

Observe que a entrada para o intervalo está em segundos. Usarei 600 segundos para definir o intervalo para 10 minutos.

Agora você pode editar seu evento cron e substituí-lo por seu próprio intervalo personalizado.

editar evento cron

Etapa 5: Adicionando um Novo Evento Cron

Agora você sabe como gerenciar as tarefas simples para seus eventos cron, mas e se quiser adicionar seu próprio cron job para seu aplicativo WordPress. Não se preocupe, é tão simples e tudo o que você precisa fazer é seguir as instruções abaixo.

Primeiro, clique em Adicionar evento Cron e você entrará na seção adicionar cron. Então, basta dar um nome de gancho como desejar (deve seguir a convenção de nomenclatura normal do PHP e sem espaços).

Em seguida, adicione argumentos (é opcional) e, no meu caso, fica em branco. Em seguida, selecione qualquer opção e coloque um horário no campo Próxima execução . Por último, escolha um horário de recorrência (horário de programação) para seu novo cron e clique em Adicionar evento .

adicionar evento cron

Se você tiver alguma dúvida a respeito disso, pode verificar as configurações de qualquer cron job em execução a partir de seus eventos cron.

Depois de adicionar um novo cron job, vá para a guia de eventos do cron e verifique o cron recém-criado. Você notará que na coluna de ação ela mostrará Nenhum (erro). Isso ocorre porque você não definiu nenhuma ação para este cron job. Portanto, você precisa escrever algumas linhas de código no arquivo functions.php do tema e adicionar uma ação.

nenhum erro

Nota: Antes de prosseguir, é altamente recomendável fazer backup do site WordPress.

Vamos abrir o arquivo e adicionar as seguintes linhas de código logo após <? Php :

 add_action ('cloudways_new_cron', 'cw_function');
function cw_function () {
wp_mail ('[email protected]', 'Cloudways Cron', 'Cloudways - a Managed Cloud Hosting!');
}

Não se esqueça de substituir meu endereço de e-mail pelo seu.

função endereço de e-mail php
Você pode ver na imagem acima, eu editei diretamente com o painel do WordPress. Se desejar, você pode editar este arquivo através de um cliente FTP como o FileZilla.

A seguir, vamos verificar a caixa de entrada do e-mail e ver se estamos recebendo a mensagem.

e-mail cron

Tada! Está feito e adicionamos com sucesso um novo evento cron.

Como gerenciar trabalhos de cron do WordPress com WP CLI

Você também pode visualizar e gerenciar todos os seus cron jobs do WordPress CLI do WordPress. No Cloudways, você precisa iniciar o terminal e fazer o login com as credenciais do servidor.

Em seguida, coloque o caminho do seu aplicativo WordPress. No meu caso, o URL era:

 aplicativos de cd / urrghmpqks / public_html / 

cron job WP CLI

Em seguida, você precisa executar este comando:

 lista de eventos wp cron 

cron job WP CLI

Você pode ver o nome do gancho, o próximo tempo de execução, a próxima execução relativa e a recorrência (hora agendada).

Como configurar um Real Cron Job

Agora, você sabe o que é cron job do WordPress e como funciona. E se você quiser substituí-lo por um cron job real devido a qualquer motivo, como baixo tráfego, tarefas importantes que precisam ser executadas em um determinado momento, ataques DDoS excessivos ou tempo de carregamento de página alto.

Então vamos começar!

Etapa 1: Abra e edite o arquivo wp-config.php

Primeiro, você precisa abrir o arquivo wp-config usando um cliente FTP como FileZilla ou cliente SSH como puTTY. Depois disso, edite o arquivo e coloque a seguinte linha de código antes da linha onde diz / * Isso é tudo, pare de editar! Feliz blogging. * /

Código:

 define ('DISABLE_WP_CRON', verdadeiro); 

editar arquivo de configuração wp

Este código desativa a execução de eventos cron em seu site WordPress e agora você pode criar um cron job real.

Gerenciar Real Cron Jobs por meio da plataforma Cloudways

Comece com 3 dias de avaliação gratuita

TENTE AGORA

Etapa 2: Adicionando um Novo Cron Job ao Servidor

Em seguida, faça login em sua plataforma Cloudways e vá para o painel Application Management > Cron Job Management > seção Advanced .

adicionando um novo cron job

Em seguida, adicione o seguinte comando e clique em Salvar alterações:
*/5 * * * * wget -q -O - 'https://wordpress-413270-1299955.cloudwaysapps.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1

guia cron avançada

No comando acima, primeiro, defini um intervalo de cinco minutos para o cron job. Você pode usar este site para verificar a expressão do cronograma. No meu caso, */5 * * * * é a expressão de intervalo.

Parabéns! Você adicionou com sucesso um cron job real.

Palavras finais!

Espero que este artigo tenha ajudado você a entender como funciona o cron job do WordPress. Eu discuti dois métodos para gerenciar tarefas cron do WordPress; um por meio de um plug-in e o outro por meio do WP-CLI. Também discuti como configurar um cron job real em um servidor ativo.

Se você tiver alguma dúvida, por favor me avise na seção de comentários abaixo.