Make WordPress Core


Ignore:
Timestamp:
11/16/2021 02:55:04 PM (3 years ago)
Author:
hellofromTonya
Message:

Taxonomy: Allow get_*_*_link() and edit_term_link() functions to accept a term ID, WP_Term, or term object.

get_term() accepts a term ID, instance of WP_Term, or an object (i.e. stdClass as a result of a db query). Functions that use get_term() also now allow for the same data types.

Why? For consistency, removing extra processing code in consuming functions, and performance.

Functions changed in this commit are:

  • get_category_feed_link()
  • get_term_feed_link()
  • get_tag_feed_link()
  • get_edit_tag_link()
  • get_edit_term_link()
  • edit_term_link()

For each of consumer of these functions, changes to pass the object instead of the term ID.

Includes unit/integration tests for test coverage of these changes.

Follow-up to [6365], [9136], [9340], [14711], [15792], [15800], [18827], [32606], [36646], [37252].

Props davidbinda, johnbillion, peterwilsoncc, hellofromTonya, sergeybiryukov, mista-flo, hareesh-pillai, audrasjb, jeffpaul, chaion07.
Fixes #50225.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-admin/includes/class-wp-terms-list-table.php

    r51896 r52180  
    398398        $uri = wp_doing_ajax() ? wp_get_referer() : $_SERVER['REQUEST_URI'];
    399399
    400         $edit_link = get_edit_term_link( $tag->term_id, $taxonomy, $this->screen->post_type );
     400        $edit_link = get_edit_term_link( $tag, $taxonomy, $this->screen->post_type );
    401401
    402402        if ( $edit_link ) {
     
    467467            'wp_http_referer',
    468468            urlencode( wp_unslash( $uri ) ),
    469             get_edit_term_link( $tag->term_id, $taxonomy, $this->screen->post_type )
     469            get_edit_term_link( $tag, $taxonomy, $this->screen->post_type )
    470470        );
    471471
Note: See TracChangeset for help on using the changeset viewer.