Skip to content

How to Create a Custom Taxonomy in WordPress with Pods

In this text and video Quick Guide, we’ll explain how to register custom taxonomies using the Pods plugin. Using Pods to create custom taxonomies is easy, and doesn’t require writing any PHP code of your own.

What Custom Taxonomies Are, and Why to Create Them

Taxonomies organize things. Dividing vehicles into “cars” and “trucks” is a simple example of a real-world taxonomy.

Similarly, custom taxonomies organize your WordPress posts. WordPress’s default taxonomies are Categories and Tags, but you may want to organize your posts using a custom taxonomy. For example, here on WPShout we also organize our posts by difficulty, so we have a custom taxonomy called Difficulty.

If you’d like more information on custom taxonomies, have a look at our full article explaining WordPress custom taxonomies in depth. (You may also want to see our article on how WordPress custom taxonomies are different from custom fields.)

Now that we know we want to create a custom taxonomy, the next question is how. The standard way would be using PHP code, but you can also use the Pods plugin to register custom taxonomies without writing code of your own. Here’s how:

How to Register a Custom Taxonomy Using the Pods Plugin

And here’s a text guide to using Pods to register a custom taxonomy:

Step-by-Step: Using the Pods Plugin to Create a Custom Taxonomy in WordPress

  1. Install and activate the Pods plugin
  2. Go to “Pods > Add New”.
  3. Click on “Create New”. We’re selecting this because we’re adding the taxonomy to an existing “Post Type”, we’re making a new taxonomy.
  4. On the “Create a New Content Type” menu, you’ll select “Custom Taxonomy (like Categories or Tags)” from the “Content Type” drop down.
  5. Then you’ll fill in the plural and singular labels for your new taxonomy. For me, that was “Difficulty Levels” and “Difficulty Level.”
  6. Click “Next step”. This will create your new taxonomy, but you then need to tell Pods to apply it to (at least one) post type in WordPress.
  7. To make your custom taxonomy work, you’ll want to go to “Advanced Options.” There you’ll scroll to the bottom, and see something labelled “Associated Post Types”. Here (if we’re using our taxonomy on normal posts), we’ll selects “Posts (post)”.
  8. Finally, we’re all set. Everything should work as you’d expect 🙂

More Information on Pods and Custom Taxonomies

So that’s how to register WordPress custom taxonomies using Pods. Here are more resources you may find helpful.

First, you should know that Pods can do a lot more than custom taxonomies. That’s actually one of the most awesome things about it: it can register custom post types, custom fields interfaces, and more, all within a single plugin. Most of your alternatives will do only one or two of these things, requiring you to run multiple plugins at once.

Next, if you’d like to be clearer on how WordPress thinks about data—including custom taxonomies, custom fields, and more—have a look at our free course on the topic:

Using Custom Taxonomies and Custom Fields in WordPress Development

Lastly, if you’ve ever got any questions for us, head on over to our Facebook group.

Yay! πŸŽ‰ You made it to the end of the article!
David Hayes

Most Voted
Newest Oldest
Inline Feedbacks
View all comments
Sietse Berkhout
February 17, 2022 6:48 am

It seems no longer possible to add a custom taxonomy to a custom post in Pods plugin.

When I choose Extend Existing > Custom Taxonomy > … no longer possible to add a custom label

How to do this now in Pods 2022 v2.8.10?

April 20, 2019 4:17 am

Thanks for your tutorial, David. I have successfully created a taxonomy, but don’t know how to display this taxonomy’s terms on post associated with them, like with default WP tags. Could you tell me how?

June 7, 2018 2:03 pm

Awesome content! Thank you.

Or start the conversation in our Facebook group for WordPress professionals. Find answers, share tips, and get help from other WordPress experts. Join now (it’s free)!

Would love your thoughts, please comment.x