Implementing Content Publication Workflows in Drupal
Producing relevant, up-to-date online content is a challenge for content managers everywhere. The bigger your content output and the more stakeholders you have involved in the process, the harder it is to keep track of whatever is being created, edited, and published. If this is your use case, what you need is a clear, easily manageable content publication workflow.
If your website is Drupal-based, you can create a content publication workflow by enabling a couple of modules that come out of the box, making life easier for your content team. In this article, we'll guide you through the most efficient ways to implement content publication workflows in Drupal.
What is a publication workflow? Why would you need one?
A publication workflow is a process many organizations adopt to create, review, edit, and publish content. It streamlines the process of getting input from different people in each stage of content publication. The main roles usually are:
- Writers or Creators who amass information and write content;
- Editors who review and edit content, request changes, and publish the content when it's ready for sharing.
This is how a simple content workflow looks like. In Drupal, you can add new publication states, the transitions between them, and roles for the stakeholders—which we’ll explain in more detail later.
You can also add specific roles for subject-matter experts who review the content for accuracy and more technical users who review the compliance of content from an accessibility or SEO standpoint.
A workflow determines the specific permissions for each role and how content will transition from one state to the next or move back to the previous one. For example, a Writer can send a content piece to the Editor for review, and the Editor, in turn, can send it back to the Writer for adjustments before publication.
You can also use the workflow to assign particular tasks to each role. For example, Editors can only create drafts, Reviewers can review and change the status, and only Publishers can make the content live. Besides, each content type can have its own workflow, since publication processes and checkpoints may vary from type to type.
Establishing a content publication workflow has many goals, including:
- Ensuring the content comprises only accurate, verified information
- Preventing the publication of sensitive material or media that does not meet copyright guides
- Efficiently avoiding "ROT" content, meaning redundant, outdated, and/or trivial
- Assigning owners to each piece of content in its different states, reinforcing accountability
- Avoiding content getting stuck in limbo, waiting for days or weeks to be edited
Creating publication workflows in Drupal
If you're working with Drupal, some modules can be of great help to establish and maintain your publication workflows. Let's look at some examples.
Workflows and Content Moderation
By default, Drupal offers very simple workflow features. You'll basically be able to toggle content between published to unpublished, and that's it.
If you feel that's enough for you, go for it. But if your publication processes are more complex and demand something extra, we definitely recommend combining the Workflows and Content Moderation modules, which come out of the box and are easy to enable.
The Workflows module provides an interface to create workflows with transitions between content states, while Content Moderation enables you to manage the roles and their permissions within these workflows. This is the easiest, most efficient way of implementing content publishing workflows for your Drupal website.
Here's what Workflows and Content Moderation allow you to create and manage:
- New content states - Workflows and Content Moderation provide you with a defaulted workflow with three states: Draft, Published, and Archived. But you can add any states that suit your workflow, like Ready for Review or Needs Adjustment.
- Drafts for live content - Workflows and Content Moderation allow you to create unpublished drafts of published content inside Drupal. Without this feature, you'd need an external tool like Word or Google Docs to create a new draft for any live content.
- Various content roles - You can go beyond Writers and Editors, creating roles associated with different parts of the publication workflow, like Reviewer, Publisher, Legal Team, and more. Each one would have particular permissions, like moving content from Draft to Ready for Review.
- Specific workflows for each content type - A simple blog post workflow could have fewer steps, while content types with more sensitive content, like press releases or publications, can demand more detailed and cautious processes.
Both Workflows and Content Moderation have been in Drupal core since version 8. To use them, go to 'Extend' in your Drupal admin toolbar, and on the core modules list, check Content Moderation and Workflows, and click 'Install.'
Setting up your workflow
Once the modules are installed, it's time to set up your publication workflow. First, go to Configuration > Workflow > Workflows, where you'll have the option of creating a new workflow or editing your default workflow.
Let's say that you want to edit the existing one to adapt it to your needs. In this case, once you click 'Edit,' it will take you to the workflow interface, which has four different sections:
States - Where you create or manage the node states. By default, you'll have Draft, Published, or Archived, but you can create as many states as you want.
Transitions - Where you manage the transitions between those states. By default, it gives you Create New Draft, Publish, Archive, Restore to Draft, and Restore. However, you can generate specific transitions, especially if you created any non-default states.
Applying the Workflow - Choose which content types your workflow will apply to. If you want a different workflow for one or more content types, you'll have to create a new workflow.
Default moderation page - Determine what state the new content will be assigned. Your best option is going with Draft, to ensure you won't publish any node before it's properly edited.
Setting up permissions
Now let's determine which kinds of permissions will be assigned to which roles within your content publishing workflow. To manage that, on the Drupal admin toolbar, go to People > Permissions > Content Moderation.
There, you'll see a list of permissions that can be checked under each role. For Editors, you may want to give permission to create a new draft, restore to draft, view unpublished content, and view the latest version. On the other hand, you may want to have o only Publishers publishing content, so you can deny Editors the ability to Archive or Publish.
Editing and publishing content within your workflow
Once you save the permissions, you're all ready to create and publish content within your new publication workflow.
Let's say you're a Publisher on the site and you have all permissions available. If you create or edit a piece of content, there will be a dropdown menu right below the text body showing all possible content states you could transition this piece to. All you have to do is update the content and choose a state from the dropdown before you save.
Note the dropdown menu with the Draft and Published state options.
However, if you're an Editor without permission to publish, you can edit the content, but the Published state will not show up on the dropdown. That means you can save a draft that is newer than the live content, but you'll need a Publisher to make the changes public.
On the View tab, you’ll also see the current moderation state and the states you can change the content to.
When you click on the Revisions tab, you see all the changes this content piece went through since it was created. There, you can set any previous version as the New Current Revision, meaning you'll restore it as the new valid draft for that content.
Finally, with the Workflows and the Content Moderation modules, you'll be able to see a Moderated content tab under your Content Overview, where you can view the moderation state of each node you ever created. There, you can also filter your content pieces according to their moderation state, be it Draft, Published, Archived, or any other.
Leveraging Drupal to the Max
Setting up a publication workflow is one of the most critical aspects of content management. Keeping track of your publication processes and improving them is vital to increase your website's content output efficiently and ensure you're serving relevant, helpful content to your audiences---saving you time to dedicate yourself to other strategic actions.
Now that you know how to implement content publication workflows in Drupal, how about learning how to use it to its fullest? Take a look at our Drupal Site Builder Track, in which you take 6 Evolving Web training courses and save 25% off the price of buying them individually.