Trusted WordPress tutorials, when you need them most.
Beginner’s Guide to WordPress
25 Million+
Websites using our plugins
Years of WordPress experience
WordPress tutorials
by experts

How to Add Custom Post Status for Blog Posts in WordPress

Editorial Note: We earn a commission from partner links on WPBeginner. Commissions do not affect our editors' opinions or evaluations. Learn more about Editorial Process.

Do you want to add a custom post status for your blog posts in WordPress?

Post statuses organize your articles based on where they are in the editorial workflow, such as ‘Drafts,’ ‘Pending Review,’ or ‘Published.’ With the right statuses, you can easily manage your own posts or even blogs submitted by other authors.

In this article, we will show you how to add custom post statuses to blog posts in WordPress.

How to add custom post status for blog posts in WordPress

Why Add Custom Post Statuses for Blog Posts in WordPress?

In WordPress, post statuses are like labels that show where a blog post is in its progress. For instance, when you are writing a new post, you set its status to ‘Draft.’ Once you are ready to share it, you change the status to ‘Published.’

You can see the post status of all your blogs by going to Posts » All Posts in your WordPress admin dashboard.

The default WordPress post statuses

By default, WordPress offers 8 post statuses that you can use to label your blog posts. But at times, there may be situations where you need to add your own custom statuses, like:

  • If you accept guest posts on your WordPress blog, then you might create a ‘User Submitted’ status or a ‘Not suitable’ status for guest blogs that don’t quite fit your website.
  • When you want to assign certain posts that should be featured prominently on your WordPress site, you can use a custom status like ‘Featured’ or ‘Editor’s Pick.’
  • If you’re a blogger, you can use a custom status like ‘Brainstorm’ to record and organize all your blog post ideas in the WordPress dashboard.

With that in mind, let’s see how you can add custom post status for blog posts in WordPress. You can use these quick links to navigate through the steps:

Step 1: Install and Configure the PublishPress Planner Plugin

The easiest way to create custom post statuses in WordPress is by using PublishPress Planner.

This free plugin allows you to create as many custom statuses as you want. You can also assign a color and icon to each status and then see this information in the PublishPress editorial calendar.

If you need more editorial management features, then you may want to check out the premium version of PublishPress Planner. But for this guide, the free version is enough.

First, you will need to install and activate the plugin. If you need help, then please see our guide on how to install a WordPress plugin.

Upon activation, you need to go to Planner » Settings. Here, select the ‘Statuses’ tab to get started.

How to add custom post status for blog posts in WordPress

There are a few settings you need to configure.

By default, PublishPress allows you to use the same statuses on pages and posts. However, you may want to use these custom post statuses on only pages or only posts.

To make this change, simply uncheck the box next to ‘Pages’ or ‘Posts’.

Creating a custom status for WordPress pages and posts

If it isn’t already enabled, then you will need to open the ‘Show the status dropdown menu on the post editing screen’ dropdown. Then, select ‘Enabled’. This allows users to change the post status inside the WordPress block editor.

With that done, just click on ‘Save Changes.’

Adding the post status settings to the WordPress content editor

With that out of the way, you are ready to create some custom post statuses.

Step 2: Create Custom Post Statuses in WordPress

There are two ways to add custom post status using the PublishPress Planner. One is to customize the default post statuses, and the other is to create new post statuses. Let’s look at each method.

Method 1: Customize the Default Post Statuses for Blog Posts

PublishPress Planner comes with a few built-in statuses that you can add to your WordPress blog posts.

A list of custom post statuses in WordPress

These statuses already have colors and icons assigned.

PublishPress Planner shows this information in its content calendar, as you can see in the following image.

The PublishPress content calendar

To edit any of these default statuses, simply hover your mouse over it.

Then, click on the ‘Edit’ link when it appears.

Editing a default WordPress page or post status

This opens an editor where you can change the status name, slug, icon, and color.

When you are happy with your changes, just click on the ‘Update Status’ button.

Editing a default page or post status in WordPress

Do you want to delete a custom post status instead?

Simply hover over it and click ‘Delete’ when it appears.

Deleting page or post statuses on a website or blog

Method 2: Create Custom Post Statuses in WordPress

PublishPress also allows you to create your own custom statuses.

To get started, click on the ‘Add New’ tab.

Improving the editorial workflow with custom page and post statuses

This opens a form where you can type in a name for the status. This will appear in the page or post editor and also in the ‘Quick Edit’ menu, so it’s a good idea to use something descriptive.

This is particularly important if you run a multi-author WordPress blog, as it will help other users understand how to use each status.

In this way, you can avoid confusion and improve the editorial workflow.

Adding a title to a custom page status

Next, you can type in a description, which will appear on the Planner » Content Calendar screen. If you are creating lots of new statuses, then the description can be a helpful reminder for yourself and other users.

If you share your WordPress dashboard with other writers and guest bloggers, then this can also be a good way to share more information about the new workflow.

Adding descriptions in PublishPress

After that, you can add a color and icon that will represent the status in your content calendar. This can help you plan your content and schedule posts in WordPress.

Simply click on ‘Select Color’ or ‘Select Icon’ and then make your choice in the popup.

Creating a color-coded content calendar for a blog or website

When you are happy with how the custom post status is set up, click on ‘Add New Status’.

To create more custom statuses, simply repeat these steps.

Step 3: Add Your Custom Status to Any WordPress Post

After creating one or more custom statuses, you can add them to any page or post. If you are inside the content editor, simply open the ‘Post Status’ dropdown in the right-hand menu.

Changing the status of a WordPress page or post

You can then choose the custom post status that you want to use for the WordPress blog post.

Another option is to use the Quick Edit setting. This is a great choice for editors or admins who need to quickly change the status of multiple pages or posts.

To do this, go to either Pages » All Pages, or Posts » All Posts. Then, simply hover your mouse over the item you want to change and click on ‘Quick Edit’ when it appears.

Changing a post's publication status using the Quick Edit settings

You can now open the ‘Status’ dropdown and choose the status you want to use.

With that done, click on ‘Update’ to save your settings.

Changing a page or post status using the Quick Edit settings

Step 4: Plan Your Content With Custom Post Statuses

As we’ve already mentioned, PublishPress shows post status icons and color labels in its content calendar. This can help you bulk schedule posts in WordPress and even plan effective content-dripping campaigns on your WordPress site.

To see the calendar, you need to go to Planner » Content Calendar in the WordPress dashboard.

An example of a WordPress content calendar

Here, you will see all your pages and posts. To learn more about a particular blog post, simply give it a click.

This opens a popup where you can see the post type, categories and tags, author, and other important information.

How to see more information about a page or post in a content calendar

To see all the pages and posts that have a specific status, open the dropdown that shows ‘All statuses’ by default.

You can then choose any post status from the list.

Filtering pages and posts based on status

This is a great way to find posts that haven’t been scheduled yet or blog posts that you still need to edit or assign.

Bonus Tip: Optimize Your Blog Content With All in One SEO

Are you looking for ways to improve your editorial workflow? Besides adding custom post statuses, using an SEO plugin like All in One SEO (AIOSEO) can speed up your content creation.

AIOSEO's landing page

This plugin comes with easy-to-use content optimization features, like the TruSEO on-page analysis.

This tool can easily spot any issues in your content, like whether it’s easy to read, if it has a meta title and description, if it’s optimized for the target keyword, and so on.

Post title and meta description example

Or, check out the SEO headline analyzer. This feature can score your article’s headline based on how effective and impactful it is for users.

For more information about using AIOSEO, you can read our AIOSEO review and our ultimate WordPress SEO guide.

We hope this tutorial helped you learn how to add custom post status for blog posts in WordPress. You may also want to see our guide on how to make money online blogging with WordPress or our list of the best WordPress SEO plugins and tools.

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

Disclosure: Our content is reader-supported. This means if you click on some of our links, then we may earn a commission. See how WPBeginner is funded, why it matters, and how you can support us. Here's our editorial process.

Editorial Staff

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi with over 16 years of experience in WordPress, Web Hosting, eCommerce, SEO, and Marketing. Started in 2009, WPBeginner is now the largest free WordPress resource site in the industry and is often referred to as the Wikipedia for WordPress.

The Ultimate WordPress Toolkit

Get FREE access to our toolkit - a collection of WordPress related products and resources that every professional should have!

Reader Interactions

6 CommentsLeave a Reply

  1. Syed Balkhi says

    Hey WPBeginner readers,
    Did you know you can win exciting prizes by commenting on WPBeginner?
    Every month, our top blog commenters will win HUGE rewards, including premium WordPress plugin licenses and cash prizes.
    You can get more details about the contest from here.
    Start sharing your thoughts below to stand a chance to win!

  2. Jiří Vaněk says

    Within SEO, I’ve been thinking about allowing others to post on my website, creating a team of people interested in the same issues so that I’m not alone in this. This article fits perfectly. Excellently explained.

  3. Ralph says

    I was working alone so whenever I finished I just hit publish but in few months I’m starting website with a team and this guide is gold. This will definitely make everything easier and we can get rid of additional tools for “pending review” as it is in wordpress itself.

  4. IanS says

    Two things.

    How would I make the rejected status in the code you supplied available for admin to preview?

    How would I make the rejected status show up as an option in quick edit?

  5. Fulvio says

    What I try to achieve is to display the availability of many persons. Each person has a dedicated page/post. One person manage all the website and should be able to easily set on busy or free the availability of each person.

    My goal would be that if the status is “published” then a green dot/icon appear next to the title (name of the person) or on top of his/her picture.

    If the status is a custom one like “busy” , then the dot/icon become red and it means the person is not available.

    How this could be done? Thanks a lot !

Leave A Reply

Thanks for choosing to leave a comment. Please keep in mind that all comments are moderated according to our comment policy, and your email address will NOT be published. Please Do NOT use keywords in the name field. Let's have a personal and meaningful conversation.