wordpress cron

Agendamento Perdido no WordPress! Como resolver?

Uma das funções do WordPress que mais facilita nossas vidas é o agendamento de posts. Com ele podemos criar nossas publicações e agendá-las para irem ao ar em um horário que seja mais conveniente para nosso público alvo. Dessa forma nossos posts podem ser publicados até enquanto estamos dormindo!

Nas primeiras vezes é comum você ficar “vigiando” se o post vai ser publicado mesmo e tudo vai sair nos conformes, mas depois de 2 ou 3 publicações com sucesso você começa a ficar mais tranquilo e deixa de verificar minuto-a-minuto se o post está o ar.

Aqui é que mora o perigo, vez ou outra a instalação do WordPress apresenta o famoso bug do Agendamento Perdido (Schedule Missed). Você prepara suas publicações, agenda e quando vai ver…

agendamento perdido no wordpress

A partir deste momento nenhum outro agendamento em seu site funciona!

Esse bug do WordPress não tem situação especial para acontecer nem versão específica, ele pode tanto aparecer após uma atualização de versão como também pode aparecer da noite pro dia no seu site que estava perfeito até ontem.

Na internet existem diversas “soluções” para o problema. As 2 mais tentadas na comunidade são as seguinte:

Substituição do arquivo wp-cron.php

Dizia-se que a substituição do arquivo pelo da versão 2.6.5 faria com que os agendamentos voltassem a ser respeitados. Alguns usuários dizem que este método funciona.

Alteração no wp-config.php

Uma outra alternativa muito tentada é a inclusão da linha

 define('ALTERNATE_WP_CRON', true);

direto em seu arquivo de configuração do WordPress. Assim como na primeira alternativa, alguns usuários dizem ter sucesso com isso e outros não.

A solução final

Eu mesmo já passei por esse problema duas vezes no mesmo site. Tentei ambas as possibilidades acima dentre outras como configuração de CRON direto no servidor e etc mas nada resolveu o problema… exceto nosso amigo sLa, desenvolvedor do plugin WP Missed Schedule.

O plugin é bem simples e não requer nenhuma configuração por parte do usuário, basta ativá-lo e já está funcionando. Após ativado ele verifica minuto-a-minuto se há algum post em seu site com o status de agendamento perdido, caso haja ele se encarrega de forçar – e efetivamente – fazer a publicação.

Aos que se preocupam com o consumo do servidor podem ficar tranquilos, pois a cada minuto o plugin pega 5 posts da sua lista e faz a verificação, logo não há sobrecarga.

E uma dica final a respeito do plugin é que ao ativá-lo ele vai publicar todos os posts antigos que já estão com o agendamento perdido, não só os futuros posts.

Posts Similares

  • Campo de Área de Texto

    O Campo de Área de texto (Textarea) cria áreas de texto adicionais. Este campo é bem útil para armazenar parágrafos simples a serem utilizados em seu tema.

  • the_field()

    the_field()

    Imprime o valor do campo especificado, da mesma forma que um “echo get_field($field_name)” faria, mas simplificando isso 🙂 Parâmetros $field_name: nome do campo a ser retornado. Exemplo: “page_content” (obrigatório) $post_id: Especifica o ID do post  onde o seu valor foi digitado. O padrão é pegar o do post atual, do loop que você está. Você também pode…

  • Plugin oficial do Twitter para o WordPress finalmente é lançado

    Lançado em 25 de fevereiro de 2015, o plugin oficial do Twitter para WordPress otimiza a integração de seu site com o Twitter através da facilidade de utilizar botões de compartilhamento, tweets incorporados, botão de seguir, além de marcação de dados estruturados gerada automaticamente para melhorar a leitura e visualização do conteúdo nos tweets, e…

  • Como limitar um autor para postar em apenas uma categoria

    Em alguns projetos, pode ser interesante configurar que alguns autores postem somente em uma categoria específica do site. Talvez você queira o abrir para mais contribuidores mas queira limitar quais categorias eles poderão ter acesso e nessa hora o plugin Author Category lhe ajudará em tal configuração. Funcionalidads do plugin: Apenas o Administrador poderá alterar…

  • Campo de Mapa (Google Maps)

    Campo de Mapa (Google Maps)

    O campo Google Map fornece uma interface de mapa interativa para selecionar um local. Este tipo de campo usa a API Javascript do Google Maps para fornecer pesquisa de preenchimento automático, pesquisa de geocodificação reversa e um marcador interativo. Campos adicionais deste tipo de campo Requisitos Para usar a API JavaScript do Google Maps, você…

  • Campo Verdadeiro ou Falso (booleano)

    O campo Verdadeiro ou Falso cria um seletor com estas duas opções, onde 1 é verdadeiro e 0 é falso. Campos adicionais deste tipo de campo Mensagem: Texto descritivo exibido perto do checkbox. Valor padrão: você pode definir se o valor padrão será verdadeiro ou falso. Como utilizar este campo em um template WP? A API…

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

12 Comentários

  1. É, o calcanhar de Aquiles do WP é justamente o Cron. A maneira que ele lida com o Cron, por tentar ser compatível com todos os servidores, é horrível.

    Atualmente, tudo que vc faz no site dispara o Cron. Além das programações normais que ele faz no Cron (para checar plugins, por exemplo), a CADA INTERAÇÃO com a página, seja feita pelo administrador ou pelo visitante, ele dispara o Cron.

    Ou seja: cada vez que vc muda de página no painel adm, ele dispara. Cada vez que alguém visita outra página do seu site, ele dispara.

    Solucionamos isso na empresa onde trabalhava personalizando o acesso ao Cron, uma vez que nosso servidor permitia o acesso ao mesmo.

    Nunca entendi pq o WP não tem a opção de desligar esse acesso constante ao Cron.

    1. Sim, o Cron hoje é uma das coisas que precisam urgente de uma revisão no WordPress. Existem desenvolvedores que optam por não o utilizarem e usam alternativas via funções ou até mesmo com agendamento de tarefas no cron do servidor.

      O problema é que alguns servidores cobram por tarefa agendada e no geral não é todo mundo que conhece bem o WordPress a ponto de se aventurar a customizar ou tentar alternativas para o cron.

  2. Tô aqui depois de um bom tempo rs pra perguntar o seguinte: essa solução traz de volta o agendamento, mas ele não funciona mais no compartilhamento automático via plugin, como o do Jetpack.

    Sabe de alguma solução que não só traga o agendamento de volta como permita que ele volte a funcionar nos compartilhamentos?