[wp-trac] [WordPress Trac] #31105: Abstract get_terms() arguments for use in wp_get_object_terms()

WordPress Trac noreply at wordpress.org
Wed Sep 28 03:54:37 UTC 2016


#31105: Abstract get_terms() arguments for use in wp_get_object_terms()
--------------------------+------------------------
 Reporter:  boonebgorges  |       Owner:
     Type:  enhancement   |      Status:  closed
 Priority:  normal        |   Milestone:
Component:  Taxonomy      |     Version:
 Severity:  normal        |  Resolution:  duplicate
 Keywords:  needs-patch   |     Focuses:
--------------------------+------------------------

Comment (by boonebgorges):

 In [changeset:"38667"]:
 {{{
 #!CommitTicketReference repository="" revision="38667"
 Taxonomy: Use `WP_Term_Query` when querying for object terms.

 The new 'object_ids' parameter for `WP_Term_Query` allows queries for
 terms that "belong to" a given object. This change makes it possible
 to use `WP_Term_Query` inside of `wp_get_object_terms()`, rather than
 assembling a SQL query.

 The refactor has a couple of benefits:
 * Less redundancy.
 * Better consistency in accepted arguments between the term query
 functions. See #31105.
 * Less redundancy.
 * Object term queries are now cached. The `get_object_term_cache()` cache
 remains, and will be a somewhat less fragile secondary cache in front of
 the query cache (which is subject to frequent invalidation).
 * Less redundancy.

 A small breaking change: Previously, if a non-hierarchical taxonomy had
 terms that had a non-zero 'parent' (perhaps because of a direct SQL
 query), `wp_get_object_terms()` would respect the 'parent' argument.
 This is in contrast to `WP_Term_Query` and `get_terms()`, which have
 always rejected 'parent' queries for non-hierarchical taxonomies. For
 consistency, the behavior of `get_terms()` is being applied across the
 board: passing 'parent' for a non-hierarchical taxonomy will result in
 an empty result set (since the cached taxonomy hierarchy will be empty).

 Props flixos90, boonebgorges.
 See #37198.
 }}}

--
Ticket URL: <https://core.trac.wordpress.org/ticket/31105#comment:3>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform


More information about the wp-trac mailing list