Publicação agendada
Este guia explica como criar um sistema de programação de artigos.
Este guia usará este rascunho do guia do sistema. Você deve revisá-lo primeiro para entender o status de rascunho / publicado e a API do artigo que usaremos neste guia.
O que queremos aqui é poder definir uma data de publicação para um artigo e, nessa data, mudar o status de rascunho para publicado.
Neste exemplo, teremos que adicionar um atributo publish_at ao tipo de conteúdo do artigo.
Clique no link Content Type Builder no menu esquerdo
Selecione o tipo de conteúdo do artigo
Adicione outro campo
Atributo date chamado publish_at com tipo de data e hora
E adicione alguns dados com datas e status diferentes para poder ver a publicação acontecer. Certifique-se de criar algumas entradas com um status de rascunho e um publicado_at antes da data atual.
O objetivo será verificar a cada minuto se há artigos de rascunho com uma publicação_ inferior à data atual.
Para executar uma função a cada minuto, usaremos uma tarefa CRON.
Aqui está a documentação completa desse recurso.
atalho - ./config/functions/cron.js
Verifique se a configuração do cron ativada está definida como true no arquivo ./config/environments/**/server.json.
*DICA
Observe que o recurso CRON incorporado do Strapi não funcionará se você planeja usar o pm2 ou o cluster baseado em nó. Você precisará executar essas tarefas do CRON fora do Strapi.
Agora podemos começar a escrever a lógica de publicação. O código que buscará todos os artigos de rascunho com um publicado_at anterior à data atual.
Em seguida, atualizaremos o status de todos esses artigos para publicação.
Atalho - ./config/functions/cron.js
e tada!