devgeniem / wp-cron-runner
This mu-plugin lets you run WP cron for a site / network site via a single endpoint.
Installs: 25 459
Dependents: 1
Suggesters: 0
Security: 0
Stars: 4
Watchers: 31
Forks: 5
Open Issues: 0
Type:wordpress-muplugin
Requires
- php: >=5.4
- composer/installers: >=1.0.12
This package is auto-updated.
Last update: 2024-10-20 15:29:57 UTC
README
WP Cron Runner
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.
Installation
Install the plugin with Composer. It requires the Bedrock mu-plugins autoloader.
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
.
Usage
This plugin defines a single endpoint to run WP crons.
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.
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.
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.
Basic auth
If you are using basic authentication define these constants.
// 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.
Maintainers
@villesiltala @villepietarinen
License
GPLv3