Taxonomy component

What is Taxonomy?

WordPress data objects, such as posts and users, can be grouped using taxonomy terms. A term is a grouping entity that exists in many-to-many relationships with other entities. A taxonomy is a grouping of terms, within which terms must be unique. WordPress ships with a number of built-in taxonomies, such as the hierarchical categories and the non-hierarchical tags. Since version 2.3, WordPress has also allowed plugins and themes to register custom taxonomies. A number of auxiliary WP features, like post formats and nav menus, are powered in part by taxonomy terms.

What does the Taxonomy component include?

The Taxonomy component covers:

  • The custom taxonomy API: register_taxonomy(), etc
  • Business functions for the creation, retrieval, updating, and deletion of taxonomy terms: wp_insert_term(), get_terms(), etc
  • Dashboard panels for managing taxonomy terms, such as edit-tags.php, and the parts of the Posts interface that are used to manage taxonomy term relationships, such as the Categories and Tags metaboxes

Ongoing projects

We have an ambitious taxonomy roadmap, and have been making incremental progress on a few large projects during the last few major WordPress releases. See ‘taxonomy’ posts on make/core for some background.

In WordPress 4.4, we’re beginning work on a few new projects:

  • Better data modeling and WP_Term #14162
  • Combining the wp_terms and wp_term_taxonomy tables #30262
  • Term meta #10142

Recent posts on the make/core blog

View all posts tagged taxonomy.

Recent posts on the make/test blog

View all posts tagged taxonomy.

150 open tickets in the Taxonomy component

150 open tickets defect (bug) enhancement feature request task (blessed)
4.8.1 1 3 0 0
4.9 1 3 0 0
Awaiting Review 39 26 6 0
Future Release 29 36 5 1

150 open tickets. Last 7 days: +2 tickets

30 tickets that have no replies

View list on Trac

  • #32788  Moving sublevel menu item still opens the dropdown menu in the original location. administration
  • #33585  Improve wp_list_categories to support multiple taxonomies
  • #34752  Confirmation for bulk delete on tax terms administration
  • #35385  Able to get raw content by calling get_the_archive_description template
  • #35504  response to adding data to taxonomy shows in a wrong place ui javascript
  • #36399  Change function signature of `wp_count_terms()` to be compliant with recent `get_terms()` changes
  • #36428  Weird default value of option 'default_link_category'
  • #36610  Loss of multibyte category and tag names
  • #36654  New function `has_terms`
  • #36956  Trigger event when taxonomy term is added with ajax administration
  • #36978  Add pre filter to get_term_by
  • #37662  Category sub-category problem
  • #37728  hide_empty doesn't work correctly in get_terms when no taxonomy specified
  • #38243  Attempting to create a term with invalid UTF8 characters creates a blank term
  • #38265  Add term_relationship_id column to wp_term_relationships
  • #38278  Only query taxonomies assigned to the post types being queried
  • #38810  Add level class to terms list-table rows administration
  • #38843  Add filter for post statuses in _update_post_term_count()
  • #39406  Make callback_args filterable in WP_Terms_List_Table
  • #39678  get_term_by slug with "0" as value
  • #39754  `_post_format_get_terms()` can overwrite names of terms in other taxonomies
  • #39969  add filter to end of post_categories_meta_box()
  • #40232  Could is_tax check through queried_terms instead of queried_object?
  • #40291  subcategory pagination no run
  • #40351  Term post re-counts scale poorly, are common and difficult to avoid performance
  • #40436  Custom taxonomy terms order lost under wp-admin/post.php edit action for a custom post type administration
  • #40671  Calling get_term() with just ID, then calling it again with ID and a different taxonomy returns the same term
  • #40696  no chance to control wp_count_terms ()
  • #40757  Standardize Application of 'the_category' Filter
  • #41035  Don't return if WP_Error object return by wp_insert_term() from foreach() loop in wp_set_object_terms() administration

4 tickets slated for 4.9

View list in Trac

  • #37189  In wp_term_query on cache ids performance
  • #41010  wp_get_object_terms() returns duplicate terms if more than one taxonomy is given in args
  • #41058  wp_dropdown_categories documentation is missing arguments docs
  • #41108  Better documentation for the labels array of get_taxonomy_labels() function docs

150 open tickets

Open bugs: 70. View list on Trac

Help maintain this component

Component maintainers:

  • wonderboymusic
  • boonebgorges
  • nacin

Many contributors help maintain one or more components. These maintainers are vital to keeping WordPress development running as smoothly as possible. They triage new tickets, look after existing ones, spearhead or mentor tasks, pitch new ideas, curate roadmaps, and provide feedback to other contributors. Longtime maintainers with a deep understanding of particular areas of core are always seeking to mentor others to impart their knowledge.

Want to help? Start following this component! Adjust your notifications here. Feel free to dig into any ticket.

Contributors following this component: