Converting Categories into Tags or other custom taxomonies (home made categories)

custom post typeSearch engines like a well organized site. Heck, people like a well organized site.

When you’re writing on your WordPress website, you can organize your “posts” using categories or tags. (Remember that “pages” don’t have categories or tags. Check out this post for more differences between posts and pages.)

  • Categories let you create a hierarchial list and you get checkboxes to choose an option.
  • Tags do not have any organization and you get a text input box to enter terms.
  • Find our more about the differences between categories and tags.

Sometimes things get messy and you want to reorganize your website. You want to convert posts into pages or you want to convert some of your categories into tags… or, vice-versa.

Recently on one of our websites, we wanted to do some house cleaning. Here are two free WordPress plugins that made our life easier. No messy coding involved.

[stextbox id=”warning”]Warning: It’s a good idea to backup your website before you change multiple posts.[/stextbox]

How to convert posts into pages (or other custom types)

There are two free wordpress plugins to let you change posts into pages (or other custom post types.) Both of these plugins work great to switch existing content between posts and pages or to change them into any new post types that you made. (We used the free Types plugin to create a bunch of new post types.)

Convert Post Types lets you change a whole bunch of pages into posts at one time. We had created a whole bunch of posts about different splash pads and needed an easy way to turn them into a custom post type that we made. Convert Post Types made life pretty easy.


We’ve also used the free Post Type Switcher wordpress plugin in the past. This plugin lets you change the post type one-by-one when you are editing the post directly.

[stextbox id=”warning”]WARNING: Do not use the Post Type Switcher plugin if you are using the Views plugin to create custom views. See Advanced Notes below.[/stextbox]


How to convert categories into tags (or other custom taxonomies)

Term Management Tools is a free plugin that lets you reogranize your categories and tags. This plugin also worked with custom categories and tags (custom taxonomies) that we’ve made.

Click on the post menu and then either categories or tags.


By default, WordPress doesn’t give you a lot of “bulk actions.” Basically, all you can do is delete a whole bunch of categories at once.


The Terms Management Tools plugin lets you do three cool things.

  1. Set Parent: Normally, WordPress lets you set the parent for one of your categories one at a time. With this plugin, you can set the parent for a whole bunch at once.
  2. Merge: You can merge two separate categories or tags into a single category (or tag)
  3. Change Taxonomy: You can move categories into tags or tags into a custom category taxonomy that you’ve made, etc.

change categories

Advanced “Do It Yourself” stuff to know about converting tags into categories

Why did we need this plugin? Right now, we’re using the premium Views plugin on our splash pad website. Originally, we had a bunch of parent-child hierarchial categories.

  • For example, we had region as a parent category, and then a bunch of locations as child categories.
  • Then, we had hours of operations, and then a bunch of different sub categories (i.e. all day, weekends only, etc)

The Views plugin lets you add a pretty cool search engine to your website so that visitors can filter information from your site based on set criteria. For example, if you’re visiting a real-estate website, you might want to find houses in a certain area, with a certain number of rooms and for a certain price.

The problem with having everything in one category is that it shows up as one very long, messy list in your search bar. The other problem is that you can’t find posts that any criteria from one parent set of categories AND any criteria from a second parent set of categories.

When you search using the Views plugin, you can filter the results based on categories and you can choose whether user selected categories within the same taxonomy are filtered by finding posts with “Any of the following” categories, “NOT one of the following” categories, “ALL of the following” categories (or a few other options, including URL variables).

Unfortunately, with splash pad regions and hours of operations in the same category taxonomy, there didn’t seem to be a way to find splash pads from multiple geographic regions but only under certain hours of operation.

A user might want to find splashpads in region A or region B, but only those that are open 24 hours a day. If you set the Views Parametric search controls to filter “any of the following” categories, then you might get a splash pad that was open 24 hours a day, but not in region A or B.

Long story short, we used the free Types Custom Fields and Custom Post Types Management plugin to create custom categories (like Splashpad Hours of Operation.) We used the Terms Management Tools plugin to split up our parent hierarchial categories into separate taxonomies, and now we can make the search bar prettier AND have our search engine find splashpads from any of the user selected regions AND any of the user selected times.

[stextbox id=”warning”]post-type-switcher-views-errorWarning: Do not use the Post Type Switcher plugin if you are creating custom views with the Views plugin. There is a known issue on the wp-types forum where saving custom views suddenly became posts instead of views. (Unfortunately, you need to be members in order to see this forum post from March 28, 2013.)

My concern would be if this post accidentally got emailed out to subscribers. Jetpack only emails out new posts when they are first published. We made this mistake and created a few Views posts accidentally, but I didn’t see anything show up in my email. Still, it’s not a very comforting glitch and hopefully the compatibility issue gets fixed in a future wp-types update.[/stextbox]

Leave a comment

Your email address will not be published. Required fields are marked *