Install
This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.
Install straight from GitHub with WP-CLI:
wp plugin install https://github.com/achttienvijftien/missed-schedule-fixer/archive/refs/heads/main.zipOn Packagist as achttienvijftien/missed-schedule-fixer:
composer require achttienvijftien/missed-schedule-fixerEver had problems with scheduled posts not being published? This plugin fixes that problem.
Configuration
Every minute the plugin looks for scheduled posts that lost their publish event. To keep that query fast, only posts scheduled within a window around the current time are considered: by default from one day into the past up to one hour into the future. Posts that were scheduled long before that window are considered stale and are left alone.
Use the achttienvijftien_missed_schedule_fixer_query_args filter to change the query. For example, to
look a week into the past instead of a day:
add_filter(
'achttienvijftien_missed_schedule_fixer_query_args',
function ( $query_args ) {
$query_args['date_query'][0]['after'] = wp_date( 'Y-m-d H:i:s', time() - WEEK_IN_SECONDS );
return $query_args;
}
);
Keep the query bounded by post_date. Removing the date query brings back the slow, unbounded behaviour
this window is meant to avoid.
Prerequisites
Basic installation
- PHP >= 8.1
- Composer
Testing
Testing
Setup
- Install Composer packages:
composer install - Install the correct Node.js version:
nvm install - Install NPM packages:
yarn - Start wp-env
yarn wp-env start - Check if test suite is ready:
yarn test - When test result is OK you're ready to start writing tests in test/php