Event Chains
Build multi-step workflows from cron events. Event Chains let you define sequences where each step triggers the next based on the outcome of the previous one - all without writing any code.
#What Chains Are For
WordPress cron events normally run independently. Event Chains let you wire them together so that:
Step B runs only after Step A succeeds
A cleanup task runs only if the main task failed
A notification fires no matter what the previous step returned
Common use cases:
Run a database backup, then optimize tables, then send a Slack confirmation
Import data, regenerate a cache, then clear the CDN
Sync inventory, then update pricing, then send a report email
#Creating a Chain
Go to Event Chains in the sidebar
Click New Chain
Give the chain a name
Add steps - each step references an existing cron hook
Set the trigger condition for each step:
On Success - run only if the previous step succeeded
On Error - run only if the previous step failed
Always - run regardless of outcome
Save the chain
Use Always for notification and cleanup steps at the end of a chain. You want those to run even if something earlier in the sequence broke.
#How Chains Execute
When the first hook in a chain completes, the chain manager checks the exit status against the trigger condition of the next step. If the condition matches, that hook is scheduled to run immediately.
Each chain execution gets a unique Run ID so you can trace the full sequence in the Chain Log.
#Chain Log
Shows every run of every chain with:
Chain name and Run ID
Step index and hook name
Status (Success, Error, or Skipped)
Duration of each step
Link to the corresponding Execution Log entry
A step marked Skipped means its trigger condition was not met - for example, an On Success step that was skipped because the previous step failed. This is expected behavior, not an error.
Last updated
Was this article helpful?
On this page