, (*1)
WP Cron Runner
, (*2)
This simple mu-plugin lets you run WordPress cron jobs for a site or all network sites via a single endpoint. This is useful when building a single solution to run WP cron jobs on a hosting platform for different type of WordPress installations., (*3)
Installation
Install the plugin with Composer. It requires the Bedrock mu-plugins autoloader., (*4)
composer require devgeniem/wp-cron-runner
Or install the plugin manually by copying the plugin.php
under your mu-plugin directory and renaming it to wp-cron-runner.php
., (*5)
Usage
This plugin defines a single endpoint to run WP crons., (*6)
http(s)://www.mysite.com/run-cron
On a network installation you only need to request a single site. The plugin will fetch all active sites from the database and call the /wp-cron.php
endpoint to run scheduled events., (*7)
To enable timed execution create a cronjob to make a HTTP request to the /run-cron
endpoint. To test if the plugin is functioning, request the endpoint on a browser to see a list of sites the cron was executed for., (*8)
The plugin will exit WordPress execution after a successful request to the endpoint. This will minimize the server load since the plugin code is run when mu-plugins are loaded., (*9)
Basic auth
If you are using basic authentication define these constants., (*10)
// Username
define( 'WP_CRON_RUNNER_AUTH_USER', 'username' );
// Password
define( 'WP_CRON_RUNNER_AUTH_PW', 'pw' );
Alternatively you can also use BASIC_AUTH_USER, BASIC_AUTH_PASSWORD and BASIC_AUTH_PASSWORD_HASH constants. When using the latter "{PLAIN}" is removed from the password string., (*11)
Maintainers
@villesiltala @villepietarinen, (*12)
License
GPLv3, (*13)