Taxonomy Filter: A Simple Plugin to Filter Taxonomies in the WordPress Admin

photo credit: H. Michael Arrighi – cc

When WordPress is used heavily as a content management system, taxonomies play a very important role for grouping information. While your standard blog might only have a handful of categories, more content-heavy sites can include hundreds of terms within custom taxonomies.

Scrolling through an impossibly long list of categories or terms can be a clunky experience in the post editor. Taxonomy Filter is a new solution for this, created by Andrea Landonio, a software engineer at Condé Nast in Milan.

The plugin allows users to filter hierarchical term taxonomies inside the WordPress admin. Specifically, it adds a custom input field for filtering taxonomies when a user is assigning them in the post editor. Here’s an example with the default category taxonomy:

Categories are automatically narrowed down as you type, so that you can easily locate the one you’re looking for.

The Taxonomy Filter plugin has a settings page that allows you configure which taxonomies you want to make filterable. Currently, it only works with hierarchical taxonomies, including default categories and custom taxonomies. (It does not support non-hierarchical tags.)

The settings page gives you two options:

Enable on post management pages (allow you to turn on/off filter field)

Hide filter field if taxonomy is empty

I tested the plugin and found that it works as advertised to quickly filter taxonomies. One added benefit is that it’s likely to keep users from impatiently creating new categories when they overlook an existing category due to too much scrolling. The instinct is to just create a new one which may have a similar name to one that already exists. This further bloats the list and makes categories less effective for grouping content.

Installing the Taxonomy Filter plugin is one small way that you can make assigning a taxonomy a little more convenient and less clunky in the admin. Download it for free from WordPress.org.