Require Post Category

Plugin Banner

Require Post Category

by Josh Hartman

Download
Description

Tired of uncategorized posts? Use this simple plugin to require users to choose a post category before updating or publishing a post. By default this only applies to normal posts. If you wish to require a category/taxonomy for a custom post type see the FAQ for filter hook usage examples.

Translators

If you have created your own language pack, or have an update of an existing one, you can send the PO and MO files to me so that I can bundle it into the plugin. Download the latest POT file.

From your WordPress dashboard

  1. Visit ‘Plugins > Add New’
  2. Search for ‘require post category’ and click the Install button
  3. Activate Require Post Category from your Plugins page.

From WordPress.org

  1. Download Require Post Category.
  2. Upload the ‘require-post-category’ directory to your ‘/wp-content/plugins/’ directory, using your favorite method (ftp, sftp, scp, etc…)
  3. Activate Require Post Category from your Plugins page.
  1. Notice appears when editing a post without selecting a category (Gutenberg)

    Notice appears when editing a post without selecting a category (Gutenberg)

  2. Alert appears when you try to save a post without selecting a category (Classic)

    Alert appears when you try to save a post without selecting a category (Classic)

Are there any settings I can adjust?

Nope, just install and activate, that’s it!

How do I use this for custom post types and/or custom taxonomies?

Use the rpc_post_types filter hook in your theme’s functions.php or a must-use plugin.

Usage examples:

function custom_rpc_post_types( $post_types ) {
    // Add a key to the $post_types array for each post type and list the slugs of the taxonomies you wish to require

    // Simplest usage
    $post_types['book'] = array( 'genre' );

    // Multiple taxonomies
    $post_types['recipe'] = array( 'cookbook_category', 'geographic_origin', 'flavor_tags' );

    // Set your own alert message for each taxonomy, or let the plugin generate the alert message
    $post_types['inventory'] = array(
        // Let the plugin generate a relevant alert message
        'manufacturer',
        // Or specify a custom alert message
        'inventory_category' => array(
            'message' => "Please choose a category for this fine inventory item."
        )
    );

    // Always return $post_types after your modifications
    return $post_types;
}

add_filter( 'rpc_post_types', 'custom_rpc_post_types' );

The default $post_types contains the following:

$post_types['post'] = array(
    'category' => array(
        'message' => 'Please select a category before publishing this post.'
    )
);

This maintains the plugin’s original functionality. However, you can remove this functionality with unset($post_types['post']); or by redefining $post_types in your hook function.

You’ve added code to require a custom taxonomy but can’t get it to work in the Gutenberg editor?

One reason may be that your custom taxonomy does not have the show_in_rest argument enabled. Without it enabled the Gutenberg editor cannot access it.

Have a question that is not addressed here?

Visit this plugin’s WordPress support forum at https://wordpress.org/support/plugin/require-post-category

Easy and Effective

By Daniel Hendricks (hendridm) on May 12, 2020

Simply install the plugin and activate. Works with both classic and block editors. Nice work.

Works perfectly with no fuss

By wpguillaume on February 10, 2020

And now with Gutenberg support. 🙂 No settings needed, install, activate, enjoy. Thank you!

Great!

By Sanapaino on February 6, 2020

A plugin as a plugin should be: simple but useful.

excellent plugin

By Groovyx9 on February 4, 2020

I was so glad to have found this plugin a few years ago : as each post on my site is right away transformed into a newsletter according to categories, forgetting to add a category means a painful process of deleting and creating again. This plugin is just perfect to avoid such a situation... and now I can see it is updated 🙂 So 5 stars.

works with cpt!

By nsultan on June 16, 2019

perfect!

Works!

By seobootuz on June 17, 2018

Using for custom post type with custom taxonomy. Great plugin.

Just what i needed!

By trevorNanders on March 21, 2017

Works great. Does exactly what I want. thanks

Excellent plugin

By net (Krstarica) on March 20, 2017

Very useful plugin. It does exactly what its name says. Excellent support from plugin author Josh.

Easy to customize

By Stephen S (ssuess) on January 10, 2017

This plugin is fantastic, and I was very easily able to customize it to work with my custom post types and custom taxonomies. Great work, thanks!

Simple and helpful

By amako on September 3, 2016

It does just what the description says and is easily modified for use with custom post types.

2.1

  • Updated for WordPress 5.5
  • FIXED: Deprecated function notice listed in jQuery Migrate Helper plugin (Classic Editor)
  • FIXED: Submitting post form by pressing enter in the title field would bypass checks (Classic Editor)

2.0.3

  • Added Finnish (fi) translation by Sanapaino

2.0.2

  • FIXED: Custom taxonomy rest_base value of boolean false was not being properly handled.

2.0.1

  • Repaired translation files.

2.0

  • Rewritten for the new Gutenberg editor (first introduced in WordPress 5.0)

1.1

  • NEW: Added a filter hook and related code to allow developers to easily add support for custom post types and custom taxonomies
  • Updated to meet WordPress PHP coding standards

1.0.7

  • Moved JavaScript to separate file and updated to use wp_enqueue_script and wp_localize_script

1.0.6

  • Added French (fr_FR) translation by Dominique V.

1.0.5

  • Added Polish (pl_PL) translation by Michał P.

1.0.4

  • Added Spanish (es_ES) translation by Andrew K.

1.0.3

  • Added i18n support

1.0.2

  • Updated for WordPress 3.6

1.0.1

  • FIXED: Disabled script when adding/editing pages

1.0

  • First stable release
Back to top