cron-tasks.ts 761 B

12345678910111213141516171819202122232425262728
  1. module.exports = {
  2. checkPublish: {
  3. task: async ({ strapi }) => {
  4. const now = new Date();
  5. const drafts = await strapi.documents('api::blog.blog').findMany({
  6. filters: {
  7. publish_at: { $lte: now },
  8. isNewVersion: true
  9. },
  10. status: 'draft',
  11. });
  12. for (const draft of drafts) {
  13. console.log('Publishing entry:', draft.documentId);
  14. await strapi.documents('api::blog.blog').update({
  15. documentId: draft.documentId,
  16. data: { isNewVersion: false },
  17. status: 'draft',
  18. });
  19. await strapi.documents('api::blog.blog').publish({
  20. documentId: draft.documentId,
  21. });
  22. }
  23. },
  24. options: {
  25. rule: '* * * * *',
  26. },
  27. },
  28. };