An incredibly simple queue system for WordPress.
wp-queue.php anywhere you like (preferably mu-plugins or plugins folder).
Activate if necessary.
The queue uses
topics to organize things. You place data in a
topic and subscribe to a
Putting things on the queue
WP_Queue::enqueue( $topic, $data, $delay ) where
$topic is the topic to place
$data on the queue and
is the number of seconds to delay putting it on the queue.
Subscribing to topics
WP_Queue::subscribe( $topic, $callable ) where
$topic is the topic to subscribe to and
$callable is a callable
to callback with. It must accept 1 argument and that argument will be the
$data you pass in from
The queue operates on a best-effort, at least once basis. It's possible to receive duplicates, however, extremely unlikely. It's also possible that a message will get lost, however, also extremely unlikely. It's built on wp-cron, so it must be enabled to receive subscriptions.
- Requires wp-cron
- Subscriptions are called from php's shutdown hook. Use absolute paths in your callbacks if you need file access.