Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/apostrophecms/scheduled-publishing
https://github.com/apostrophecms/scheduled-publishing
Last synced: 9 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/apostrophecms/scheduled-publishing
- Owner: apostrophecms
- License: mit
- Created: 2022-05-04T08:03:50.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-09-05T21:01:38.000Z (4 months ago)
- Last Synced: 2024-12-19T18:15:27.055Z (15 days ago)
- Language: JavaScript
- Size: 40 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE.md
Awesome Lists containing this project
README
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:
```javascript
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:
```bash
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:
```bash
# 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](https://opensource.com/article/21/7/cron-linux).
> If you are using our `stagecoach` utility for deployment, don't forget `/current` at the end of the path.