Joomla 4.0 new publishing workflow feature - A step-by-step guide
Joomla 4.0 is the latest version of Joomla and it has been released throughout the Alpha versions. It has a lot of changes in both user interface and features. In all those new features, the most interesting one in this version is the Publishing Workflow feature.
This article will show you all you need to know about Joomla 4.0 new publishing workflow feature.
1. What is the workflow?
According to Joomla, Workflow is described as a sequence of steps, which allow users to manage the website content. Users can create and customize any workflow to meet their needs.
In Joomla 4.0, the workflow includes:
- States: it is regarded as steps within a workflow.
- Possible transitions: it includes the sequence of states an article has to pass.
- Item conditions: the conditions of the article can be. There is only 4 item condition: published, unpublished, trashed, and achieved.
- Categories: it is the place to assign articles.
2. Why I should use it?
As I mentioned before, the workflow is mainly used for managing articles in your website. To be specific, if you have the same problems as the two scenarios below, you can apply the new workflow feature on your website to enhance the performance.
You are the administrator of a news website. You allow users to update the latest news from many different sources to enrich your site.
So the workflow needed to manage the content effectively require 2 steps
- Submitter (Registrator) will submit the news articles on the front-end
- Reviewer (Administrator) will review the topic before allowing to publish.
Nowadays, a professional content marketing team may consist of 3 personnel and a basic workflow like this:
- Content writer (Author) will make the writing in the Joomla CMS
- Proofreader (Editor) will proofread the content when it’s done.
- Content Manager (Administrator) will overview the content to decide if it is good to publish or not.
- If the content still needs to be edited, he will make comment for a content writer
- If the content is good to go, he will make it publish.
3. How does it work?
As a Joomla admin, you can easily create or customize a workflow to control articles within a component.
The workflow works as a process. When the article is added in the workflow, it will go step by step (the transitions) until the article is published.
The point here is admin can control the content in their website automatically and logically without manual management. It will reduce the time on the administration page.
In Joomla World Conferences 2017 or JoomlaDay Austria 2019, Mr. Benjamin Trenkle has explained it quite clearly.
However, you can follow our step-by-step guide below for better understanding.
4. How to set up a workflow?
For this section, we will use the Scenario #1 to demonstrate how to set up a workflow
Step 1: Create the User Group and User (Optional)
You can use the existing User groups and Users in the default Joomla. However, to be more specific tasks of users and users groups, you can create new ones.
1.1 Create new User Group
1. Go to Users/Groups and click on New to create a new User Group
2. Now we will create 2 user groups: Submitter (add new articles) and Reviewer (review and publish articles). Remember to set Group Parent as Registered
Create Reviewer follow the same steps. So we will have a result like this.
1.2: Create new User
1. Go to Users Manage and click on New and follow this instruction to create new Users
2. Create a new user
You should be redirected to the "User settings" page. Here, we will create 2 users for both Submitter and Reviewer groups.
- For “Submitter” group: I will create a new user, name “Submitter”. An important thing here, besides entering the account information, you need to assign the user to “Submitter” group.
- For “Reviewer” group: Do the same steps like “Submitter” group with just one exception: You need to set the user to “Reviewer” group.
And this is the result.
Step 2: Set up notifications
The workflow process relies on notifications, and to allow the workflow working properly, then we need to do 2 steps below.
2.1. Turn on “Email on transition execution” for notification
When it is enabled, a message will be sent to the User associated with the Group assigned to the Transition. When it triggers a message? When a user (Submitter) submit a new article.
1. Go to System and click on Plugins.
2. Click the Table Options and Select Type of Content.
3. Click on Content - Joomla to edit
4. Turn on Yes for Email on transition execution
2.2. Enable email notification for User
1. Go to Users/ Manage
2. Edit the User
In order to receive the email notification when an article is added, you need to set Receive System Emails parameter to Yes.
Note: When enabled for Workflows, it will send a message to the User associated with the Group assigned to the Transition.
Step 3: Create a workflow.
3.1. Go to Content/ Workflows
Clicking on New to create a new workflow (or you can use the Joomla! Default right away)
3.2. Enter a Name for your new workflow<h/4>,
For example, My workflow.
3.3. Set new workflow as default
When the new workflow has created, you can set it as the default for your website by clicking on Default.
Step 4: Create Stage
4.1. Open Stage List
Click on the orange circle under Stages to open the Stages list.
3.2. In the Stage List
The Stage List already has 4 basic stages which are Unpublished, Published, Trashed, and Archived. You could use 4 stages or create a new one for your workflow by clicking on New.
Step 5: Create Transition
It allows you to change the article’s status. You can set any transitions that you want to, for example from Published to Unpublished, from Review to Trashed, etc.
5.1. Open Transition List
Click on the Transition to open the Transitions List
5.2. In the Transition List
You can add new or change the transition
For example, create a new transition (Review) transfer from “Unpublished” to “Published”. Here, we set Current Stage to Unpublished and Target Stage to Published.
5.3. Set the Permissions
Now, you can set the right for specific people to change the transition. For example, Reviewer is allowed for changing the status of the article if it is set allowed.
When it is done, your new transition is going to be like this.
Now, you’ve finished the setting workflow.
Step 6: Assign Workflow & User Group Permissions to the Category
This step is to define which category articles will belong.
6.1. Create a new Category
- Enter the Title: User’s Article Blog
Click Workflow tab: Click the drop-down and select “My Workflow”.
6.2. Set the permission
In the Permission section, you need to assign actions for each group. For example
Submitter: change the Select New Settings of Create and Edit Action into Allowed.- Reviewer: change the Select New Settings of Delete, Edit, Edit State and Edit Own Action into Allowed.Click Save & Close to finish.
6.3. Assign the category in the article
When you create a new article and remember to set the category into the User’s Article Blog Category to follow the New Workflow.
Step 7: Ready to use
7.1. In the back-end
When Submitter adds a new article, it will appear in Unpublished stage (because the Unpublished stage is set the default)
Reviewer receives a notification from adding the article, they will check the article before publishing. When everything is ready to publish, they will change the stage into “Published”.
Now, the new article has a new status which is published following the “Review” transition.
7.2. In the front-end
1. Create a Login form in Menu Item
- Go Menus/Main Menu to open Menu Items list, then click New
- Enter the Menu Title and select the Login Form in the Menu Item Type.
When you’ve done, click Save & Close.
2. Or create a Login form by Module extension
- Go Content/Site Modules and click New to create a new module
- Select Login type
3. Add new Menu Item to the Menu that displays for the Registered User Group only to add an article.
- Menu Item Type: Create Article
- Parent Item: Login
- Access: Registered
4. When users Login to the Website, If they belong to Registered User Group, the menu Add an article will display and they can post a new article.
For example, Login by Submitter
When an article is added, there will be a notification like a new private message to the Reviewer. Then the Reviewer has to come to the site and check whether this article should be published or not. The Super User role also gets a message notification about the added articles.
Note: Super User can use Batch to move one article into a different workflow. However, if the article is already published, it doesn’t matter to the content on the website.
This new feature will be hard for the newbie. However, it will help you control the content of the website in a logical way. Therefore, you won't have to take time to select each article and set whether it should publish or not.
Hope this guide is helpful for you in creating a workflow that really helps you optimize the publishing process.
Keep in touch with us for other interesting topics about Joomla 4.0