How to build a content publishing pipeline using GravityView

How to build a content publishing pipeline using GravityView and Gravity Flow

Written by Casey Burridge Marketing Coordinator at GravityKit since 2021, Casey is an expert on Gravity Forms, WordPress, and marketing.

Last updated:

Categories GravityView

Tags , , , ,

Gravity Flow is a powerful tool for creating workflows and business processes using Gravity Forms. Did you know that GravityView integrates with Gravity Flow, allowing you to filter entries in a View based on their workflow status?

In this tutorial, we’ll show you how to build a content publishing pipeline using the Gravity Forms Advanced Post Creation add-on, Gravity Flow, and GravityView.

First, we’ll create a submission form, allowing users to submit blog articles. Next, we’ll build a workflow that sends articles through multiple review steps before being approved and published on the site. Finally, we’ll create a View to display all submitted posts, so content managers can see which step of the workflow they’re in and their current status.

Let’s get started!

Sneak peek

Here’s a sneak peek at what our content publishing pipeline looks like on the front end:

What you’ll need

Here are the plugins/add-ons you’ll need if you want to follow along with this tutorial:

Creating the article submission form

We’ll start by creating a new Gravity Form that allows users to submit blog articles. We’ll title the form something like “Article submissions”.

A new Gravity Forms with the title: "Article submissions"

Now we can start adding fields using the Gravity Forms drag and drop form editor. Feel free to add any fields you feel are necessary. We’ll keep things simple by adding the following fields:

  • Article title (Single Line Text field)
  • Article content (Paragraph field)
  • Category (Drop Down field)
  • Featured image (File Upload field)

After adding the paragraph field, ensure that you open the field settings, click on the “Advanced” tab and check the box that says “Use the Rich Text Editor”. This will allow users to add basic HTML formatting to their text.

A checkbox labeled 'Use the Rich Text Editor'

You may also want to limit the allowed file types on the File Upload field and set a limit on the maximum upload size. 

The field settings for the Gravity Forms File Upload field, which includes a box to limit the allowed file extensions and maximum file size

When you’re done, save your form and embed it on your website. Here’s what our article submission form looks like on the front end:

A Gravity Form allowing users to submit blog articles.

💡 Pro tip: Add a “Website” field for the post permalink.

There’s just one more thing we need to do before we can move on. In our publishing workflow, we’re going to have a step where the editor can send the article back to the user for updates. However, this step will only work if the user is logged-in when they submit their article.

To ensure users are logged in when submitting articles, we’ll enable the “Require user to be logged in” option in the form settings.

A checkbox in the Gravity Forms settings labeled 'Require user to be logged in'

Now that we have our form set up, the next step is to configure the Post Creation feed.

Creating the Advanced Post Creation feed

Before we can add the Post Creation step to the content publishing workflow, we’ll first need to create a feed. We can do this by going to the form settings, selecting “Post Creation” on the left, and then clicking “Add New” to add a new feed.

The 'Add New' button on the Gravity Forms Post Creation feed page

Now we can start configuring the post settings. The first thing we’ll need to do is select the post type and default post status when a new submission is created. 

You can choose whether you want to set the status to “Draft” or “Published”, as this feed will only run at the end of the publishing workflow, after the article has been through the necessary review and editing steps. 

The Advanced Post Creation feed settings, showing two options labeled 'Type' and 'Status' respectively

Now we’ll scroll down to “Post Content”. Here, we need to map the fields in our form to the different elements of a WordPress post. To ensure the post title and content are added dynamically from the form submission, we can populate these fields using Gravity Forms merge tags.

Gravity Forms merge tags added to the 'Title' and 'Content' input boxes

When you’re finished configuring the Post Creation feed, remember to click “Save Settings” at the bottom of the page.

Now we can start configuring the content publishing process using Gravity Flow!

An overview of the content publishing pipeline

There are several ways to structure your content publishing pipeline using Gravity Flow. For example, you can add as many approval steps as you wish before the post is finally published. 

The workflow steps for our content publishing pipeline in Gravity Flow

As you can see, our workflow has four steps—”Initial post approval”, “Editor approval”, “Revisions required”, and “Publish post”. Here’s how it works:

  • The post is submitted by the logged-in user and sent to the site owner for initial approval.
  • After the site owner approves the post, it is sent to the editor for more in-depth scrutinizing. If the editor requires the post to be updated, they can revert it back to the user for edits.
  • This review loop continues until the editor is happy with the post, at which point they can approve it for publishing.
  • After the editor approves the post, the Post Creation feed runs, either publishing the post or saving it on the site in draft.

Now let’s start creating the workflow, one step at a time.

Creating the content publishing workflow

When building workflows with Gravity Flow, we’ll need to add each step separately. To add a new workflow step, click on the “Workflow” tab and then click “Add New”.

The 'Add New' button on the 'Workflow' feed page in Gravity Forms

The first step we need to add is the initial approval step.

Configuring the initial approval step

The first thing to do is select “Approval” as the step type. 

Selecting 'Approval' as the step type.

Next, we’ll scroll down and select the assignee for this step. This can either be a specific user or a user role.

Selecting an assignee or assignees for the workflow step

Gravity Flow also gives you the option to send an email to the assignee with a custom message.

A message inside the 'Message' box for the workflow notification that reads: 'A new entry is pending your approval. please check your workflow inbox'.

After configuring the remaining options, we’ll need to select the next step if the workflow is rejected or approved. If rejected, we want the workflow to end so we’ll select “Workflow Complete”. However, if approved, we want to move to the next step in the workflow.

The 'next step is Rejected' and 'Next step if Approved' options set to 'Workflow Complete' and 'Next step in list' respectively

That’s it! Now we can start configuring the next step in the workflow – the editor review process.

Adding an editor review step

After initial approval, we want to send the article to an editor to check whether any updates are required. We’ll set the step type to “Approval” once again and assign it to the Editor user role.

Selecting the 'Editor' user role as the assignee for the workflow step

When an editor is reviewing the article, we want them to be able to send the submission back to the user for updates if necessary. The only way to achieve this is by enabling the “Revert to user input step” option. However, we can’t enable this until after we create the user input step, which is what we’re going to do next.

Creating the user input step

After adding a new step to our workflow we’ll select “User Input” as the step type. A user input step allows a user to edit their own submission.

The 'User Input' step type in Gravity Flow

We’re going to assign this step to the user who submitted the article. To do this, we’ll select “User (Created by)” as the assignee and then select the fields we want to make editable (in this case, all of them!).

Setting the assignee and the editable fields for the workflow step

After configuring the remaining options (including adding optional email notifications), we’ll set the next step to “Editor approval” which is actually the previous step in the workflow!

The 'Next Step' option set to 'Editor approval'

Finally, after saving this step, we need to go back to the previous editor review step and enable the “Revert to User Input step” option.

A checkbox for enabling the 'Revert to User Input step' option

This creates a loop, allowing editors to revert article submissions until users have made the required edits. All we need to do now is configure the post creation step.

Configuring the post creation step

When the editor is happy with the article and decides to approve it, we want to ensure that the article is published, or at least saved as a draft for publishing later. To do this, we’ll add a new workflow step and set the step type to “Create Post”.

The 'Create Post' step type in Gravity Flow

After that, we’ll need to select the Post Creation feed that we want to run (we created this earlier) and set the “next step” to “Workflow Complete”.

Selecting the Post Creation feed that should run when the workflow step runs

That’s it!

Content publishing workflow demo

Here’s a quick demo of the content publishing process. 

First, the article is sent to the site owner for initial approval. They can choose to either approve the article or reject it.

The Gravity Flow initial post approval step. There is a note that says 'This looks good. I'm going to pass this on to our editor'.

If approved, the article is sent on to an editor for more careful reading. They can then revert the article back to the original author for edits.

The Editor approval step. There is a note that reads 'Hey there. Nice work. Can you please make the following edits: - make the subheadings H2s not H3s...'

Once the user has made the required changes, the article is sent back to the editor for approval. This continues until the article has been approved.

In the final part of this tutorial, we’re going to use GravityView to visualize the content publishing process by adding all articles to a searchable database. This will allow site Admins and content managers to filter articles by workflow status, keep track of new posts, and review older posts.

Displaying the content pipeline for content managers using GravityView

So far, we’ve built a content publishing pipeline using Gravity Forms’ Advanced Post Creation add-on and Gravity Flow. Now we’re going to use GravityView to create a searchable database of posts, allowing content managers and editors to easily find articles based on their workflow status!

We’ll start by hovering over Views and clicking New View. Now, we’ll give our View a name and select a View type. For this example, we’ll use the Table layout, but the DataTables layout would work just as well.

The first thing we’ll do is configure the search bar. Here we’re going to add search inputs that allow users to filter posts by Workflow step and status.

The GravityView Search Bar widget settings

Next, we’ll add the fields that we want to display on the Multiple Entries Layout, including a link to the Single Entry.

The 'Entries Fields' section of the GravityView View editor'

To configure the Single Entry Layout, we’ll click on the Single Entry Layout tab at the top and add fields by clicking on the “Add Field” button.

Here’s what our View looks like on the front end:

A View containing all of the posts and their workflow status: The content publishing pipeline on the front end

As you can see, it’s a database of all submitted articles. There is a search feature at the top allowing users to search for posts by workflow step, status, category or keyword. 

Here’s a video demonstrating the search feature in action:

Having a central database of posts allows content managers to keep track of the publishing process and filter articles by workflow status!

💡 Pro tip: You could also create separate Views for each step of the workflow by using the Advanced Filtering extension.

Create your own content publishing pipeline on WordPress

Gravity Flow is an add-on for Gravity Forms that allows you to build workflows with multiple steps. GravityView also integrates with Gravity Flow, allowing you to search and filter entries based on their workflow status.

In this tutorial, we created a content publishing pipeline using the Gravity Forms Advanced Post Creation add-on, Gravity Flow, and GravityView! If you enjoyed this tutorial, check out other ways that GravityView integrates with Gravity Flow.

Helpful tips right in your inbox.

Subscribe to our biweekly newsletter for tips, special offers, and more!

Helpful tips right in your inbox.

Subscribe to our biweekly newsletter for tips, special offers, and more!