Joomla Workflow and Publishing — Article Lifecycle Management
In this tutorial, you'll learn how to manage the full article lifecycle in Joomla — from draft through review to published and archived — using article states, scheduling, version history, batch processing, and the Workflow component introduced in Joomla 4.
What You'll Learn
- The four article states: Published, Unpublished, Archived, Trashed
- Scheduling articles with Start and Finish publishing dates
- Managing featured articles and their ordering
- Using version history to track changes and restore previous versions
- Batch processing articles for efficient management
- Understanding check-in and force check-in for locked articles
- Configuring article access levels and editing permissions
- Using the Workflow component for custom publishing workflows
Why It Matters
On a single-author blog, you write, publish, and you are done. On a multi-author site with editors and publishers, content goes through stages — draft, review, scheduled, published, and archived. Joomla's workflow tools let you manage this lifecycle without chaos. Version history protects against mistakes. Scheduling enables time-sensitive content. Workflow ensures the right people approve content before it goes live.
Real-World Use
A news website has journalists, editors, and a publishing manager. A journalist writes an article and saves it as Unpublished (draft). An editor reviews it, makes changes, and sets it as Published with a scheduled start time of 8 AM tomorrow. The publishing manager reviews the version history to see what changed. After two weeks, the article is automatically archived. The journalist can restore it later if needed. Everything happens through Joomla's workflow without emailing files around.
Learning Path
flowchart LR A["Categories Deep Dive"] --> B["Workflow & Publishing
You are here"]:::current B --> C["Menu System"] C --> D["Menu Item Types"] D --> E["Modules & Positions"] classDef current fill:#38bdf8,color:#0f172a,stroke-width:2px
Article States
Every article in Joomla has one of four states. Understanding each state is essential for content lifecycle management.
Published
Published articles are visible on the front end to users with appropriate access levels. This is the final state for live content.
An article can be published directly, or it can move through other states before reaching Published. The transition path typically looks like:
Draft (Unpublished) > Review (Unpublished) > Scheduled (Published with future date) > Live (Published) > Archived
Unpublished
Unpublished articles are hidden from the front end. They remain in the database and are visible in the Article Manager admin with a red circle icon.
Uses for unpublished articles:
- Drafts: Articles you are still writing
- Review queue: Articles waiting for editorial approval
- Seasonal content: Articles you hide off-season and republish later
- Under construction: Articles that are not ready for public viewing
Archived
Archived articles are removed from normal listings but remain accessible through the archived articles component and direct URLs.
Archive is for content that is:
- Still valuable but no longer prominent enough for main listings
- Outdated but worth keeping for historical reference
- Available by direct link or from the archive module
Trashed
Trashed articles are soft-deleted. They are not visible anywhere on the site and do not appear in normal admin views (you must filter by "Trashed" to see them).
You can recover trashed articles by changing their status back to Published. To permanently delete, use the Empty Trash button in the Article Manager.
Scheduling with Publishing Dates
Joomla lets you schedule articles to publish and unpublish automatically. This is done through the Publishing tab in the article editor.
Start Publishing
Set a future date and time. The article remains Unpublished until that moment, then automatically transitions to Published.
Use this for:
- Announcements timed to a specific hour
- Blog posts that should go live at a specific time
- Content coordinated with marketing campaigns
Finish Publishing
Set a date and time. The article automatically transitions from Published to Unpublished at that moment.
Use this for:
- Time-limited promotions and sales
- Event announcements that expire after the event
- Seasonal content that should disappear after a holiday
How Scheduling Works
Joomla checks scheduled dates on every page load through a plugin called "Content - Joomla." If the plugin is disabled, scheduled publishing does not work. Ensure this plugin is enabled in Extensions > Plugins.
Featured Article Management
Featured articles are a special designation. They can be displayed separately using a Featured Articles menu item, and they can have their own ordering.
Adding Featured Status
You can mark an article as featured:
- During article creation: check the Featured box in the editor
- From Article Manager: click the star icon in the Featured column
- From the article edit screen: click the Featured button in the toolbar
Ordering Featured Articles
Go to Content > Featured Articles. This screen lists only featured articles. You can reorder them by:
- Dragging the order icon (the grid dots) up or down
- Editing the order number in the Order column
The order determines the sequence in which articles appear on the featured articles page.
Featured Articles Menu Item
Create a menu item of type "Featured Articles" to display all featured content. Configure layout options:
- Leading articles
- Intro articles
- Columns
- Links
- Pagination
Version History
Joomla saves a version history for every article. This is one of its most valuable features for content management.
How Version History Works
Every time you save an article, Joomla creates a new version. By default, Joomla keeps the last 10 versions. You can change this limit in Global Configuration.
Viewing Versions
- Open an article for editing.
- Click the Versions tab.
- You see a list of saved versions with:
- Date and time of save
- User who saved it
- A "Keep Forever" flag
- Compare and Restore buttons
Comparing Versions
Click Compare next to two versions. Joomla shows a side-by-side diff with additions highlighted in green and deletions in red. This helps editors see exactly what changed between versions.
Restoring a Version
Click Restore on any version to revert the article to that point. The current version is preserved as a separate version, so you can undo the restore if needed.
Keeping Versions Forever
By default, Joomla deletes old versions when the limit is exceeded. Click the Keep Forever toggle on important versions to prevent them from being pruned.
Save as Copy
The Save as Copy button in the article toolbar creates a duplicate of the current article. The copy is saved as Unpublished with "Copy of [original title]" as the title.
Use Save as Copy to:
- Create variations of an article for A/B testing
- Base a new article on an existing one
- Create translated versions manually
Check-In System
When a user opens an article for editing, Joomla locks it (checks it out) to prevent two people from editing simultaneously. If a user closes the browser without saving, the article remains checked out — locked by a session that no longer exists.
Force Check-In
Go to System > Global Check-in to release all locked items. This unlocks articles, modules, menu items, and any other checked-out content.
Check-In from Article Manager
In Article Manager, the Check-in column shows a lock icon for checked-out articles. Select the article and click the Check-in button to unlock it.
Batch Processing
Batch processing lets you perform actions on multiple articles at once.
Using Batch
- Go to Content > Articles.
- Select the articles using checkboxes.
- Click the Batch button in the toolbar.
- Choose the batch action:
- Copy: Copy articles to another category
- Move: Move articles to another category
- Add Tags: Attach tags to selected articles
- Change Access Level: Update access level
- Change Language: Update language assignment
- Click Process.
Batch processing saves enormous time when reorganizing content. Instead of editing 20 articles one by one, you can do it in one operation.
Article Access Levels
Access levels control who can view an article. Default levels:
- Public: Anyone, including non-logged-in visitors
- Registered: Only logged-in users
- Special: Users in the Special group (typically Super Users and Administrators)
You can create custom access levels in Users > Access Levels. For example, "Premium Members" or "Staff Only."
Editing Permissions per Article
In the article's Permissions tab, you can override default permissions for specific user groups:
- Delete: Who can delete this article
- Edit: Who can edit this article
- Edit State: Who can change its status
These permissions override category-level and global settings. Use them sparingly — only for articles that need special handling.
Workflow Component (Joomla 4+)
Joomla 4 introduced the Workflow component, which replaces the simple published/unpublished system with custom workflows.
What a Workflow Is
A workflow defines stages (states) that content moves through, and transitions between those stages.
Default Workflow
Joomla ships with a default workflow containing three states:
- Unpublished: Initial state for new articles
- Published: Live and visible on the front end
- Trashed: Soft-deleted
Custom Workflows
You can create custom workflows with additional states:
Draft > Review > Approved > Scheduled > Published > Archived
Each state has:
- Name: Human-readable label
- Description: Explanation of the state
- Color: Visual indicator in Article Manager
Creating Transitions
Transitions define how content moves between states:
- Submit for Review: Unpublished to In Review
- Approve: In Review to Approved
- Schedule: Approved to Scheduled
- Publish: Scheduled to Published
- Archive: Published to Archived
- Send Back: In Review to Unpublished
Each transition can have:
- Allowed User Groups: Who can perform this transition
- Notification: Email notification sent to specific users
Enabling Workflow
Workflow is enabled per category:
- Go to Content > Categories.
- Edit a category.
- In the Options tab, set Workflow to "Enabled."
- Save.
Articles in that category now use the workflow's states instead of the basic published/unpublished system.
Common Mistakes
Not using scheduled publishing for time-sensitive content: Beginners manually publish articles at the right time. Use scheduled publishing to automate this. Set the start date and Joomla handles the rest.
Leaving articles checked out: A user opens an article, gets interrupted, and the article stays locked. Other users cannot edit it. Use Global Check-in regularly to release locked items.
Not enabling version history limits: By default, Joomla keeps 10 versions per article. On a busy site, this can use significant database space. Review and adjust the limit in Global Configuration.
Ignoring the Workflow component: Many beginners stick with basic publish/unpublish even on multi-author sites. Custom workflows improve editorial control and accountability.
Forgetting to test scheduled publishing: Scheduling depends on the Content - Joomla plugin being enabled. If you schedule an article and it does not publish, check that this plugin is active.
Practice Questions
What is the difference between Unpublished and Archived articles? Answer: Unpublished articles are hidden from front end but visible in admin listings. Archived articles are removed from category listings but accessible via the archive component. Archive is for preservation; Unpublished is for temporary hiding.
How does Joomla's version history help content editors? Answer: Version history saves every article revision, lets editors compare versions with a color-coded diff, and allows restoring any previous version. This prevents data loss and provides accountability.
What is the purpose of the Workflow component in Joomla 4+? Answer: Workflow replaces the simple published/unpublished system with customizable stages (Draft, Review, Approved, Scheduled, Published) and transitions that control who can move content between stages.
Challenge: Create a custom workflow for a magazine site with five states: Pitch, Assigned, In Writing, In Review, Approved, Scheduled, Published. Define transitions between each state with appropriate user group permissions. Enable workflow on a test category and walk an article through the full workflow from pitch to publication.
FAQ
Mini Project
Your task: Implement an editorial workflow for a small news team.
- Create a custom workflow with states: Draft, In Review, Approved, Scheduled, Published.
- Create transitions: Submit for Review (Draft to In Review), Approve (In Review to Approved), Schedule (Approved to Scheduled), Publish Now (Approved to Published).
- Create user groups: Journalists, Editors, Publishers. Assign appropriate permissions to transitions.
- Enable workflow on a "News" category.
- Create three articles in various workflow stages.
- Use version history to track changes on one article through the review process.
- Schedule one article to publish tomorrow at 9 AM.
What's Next
Now that you understand publishing workflows, learn about the menu system:
Continue to Lesson 11: Menu System — Learn menu types, menu items, and hierarchy in Joomla.
Related lessons:
- Joomla Articles and Categories — Categories are the foundation of content that menus display
- Joomla Menu Item Types — Detailed guide to every menu item type
Built by the developers of DodaTech
Doda Browser, DodaZIP & Durga Antivirus Pro