Joomla Workflow provides a configurable content approval pipeline. Instead of authors publishing directly, content moves through defined Stages (e.g. Draft → Review → Published) via Transitions. Each transition can require specific permissions and trigger automated actions such as sending notification emails.

Enabling Workflow

Go to Admin → Content → Workflows and create a workflow, or enable the default workflow. Then assign the workflow to a category in the category's Publishing tab under Workflow.

Stages

A stage represents a point in the content lifecycle. Each workflow must have exactly one Default stage (where new articles start) and at least one stage that marks content as published.

Example stages for a news site:

  • Draft — author is working on the content (default)
  • Sub-Editor Review — awaiting first review
  • Editor Approval — awaiting final sign-off
  • Published — live on the site
  • Archived — no longer current, retained for reference

Transitions

A transition moves content from one stage to another. Each transition has:

FieldPurpose
From StageThe stage the article must currently be in
To StageThe stage it moves to after the transition
PermissionWhich user group can execute this transition
ConditionOptional: set a publish/unpublish state on the article when the transition fires

Notification Plugins

Enable the Workflow Notification plugin to send email alerts when a transition is executed. Configure per-transition: who receives the notification (stage owners, specific groups, or the article author) and what the email says.

Using Workflow as an Author

When workflow is enabled on a category, authors see a Transition button instead of a Publish button in the article toolbar. Clicking it shows the available transitions for the current stage. Transitions the user doesn't have permission to execute are hidden.

Tip: Start simple — a two-stage workflow (Draft → Published) with one transition is enough for most small teams. Add intermediate stages only when you have a genuine review bottleneck.