Como gerenciar trabalhos de cron do WordPress
Publicados: 2021-05-14
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 gerenciar trabalhos de cron do WordPress com plug-in
- 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 .

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.

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”.

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 .


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.

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 .

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.

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.

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.

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 /

Em seguida, você precisa executar este comando:
lista de eventos wp cron

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); 
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
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 .

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

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.
