Extensions & Integrations

Scheduled Publishing

This module allows to schedule publishing of your pieces (which includes pages) to specific dates.
> npm i @apostrophecms/scheduled-publishing

ApostropheCMS logo

Scheduled Publishing

GitHub Workflow Status (branch)

This module allows to schedule publishing of your pieces (which includes pages) to specific dates.

Installation

To install the module, use the command line to run this command in an Apostrophe project's root directory:

npm install @apostrophecms/scheduled-publishing

Usage

Configure the Scheduled Publishing module in the app.js file:

require('apostrophe')({
  shortName: 'my-project',
  modules: {
    '@apostrophecms/scheduled-publishing': {}
  }
});

Editors can now schedule publication and un-publication times for documents. Note that un-publishing a document means it is no longer available except in draft form. Since the home page must always be available, the home page cannot be scheduled for un-publishing.

For publiction and un-publication to actually occur, you'll need to run the appropriate command line task on a periodic basis, as described below.

Using the command line task

To actually publish or unpublish the documents at scheduled times, you must execute the appropriate command line task:

node app @apostrophecms/scheduled-publishing:update

Typically you will want to schedule this to run periodically using a standard Linux scheduling tool like cron. For instance, here is a crontab entry to run the task once per hour:

# At the top of every hour
0 * * * * (cd /path/to/your/apostrophe/project && node app @apostrophecms/scheduled-publishing:update)

You can schedule the task to run more frequently if you plan to schedule publication times in the middle of the hour. Note that the task is safe to run as frequently as you wish, as it won't do anything if no documents are scheduled to be published yet.

For more information, see how to use cron on Linux.

If you are using our stagecoach utility for deployment, don't forget /current at the end of the path.

Updated

3 months ago

Version

1.0.5

Report a bug