Menu Adam R Brown

WP hooks navigation: Home/browseActions indexFilters index

Source View: edit_term_taxonomy

To save our bandwidth, we show only a snippet of code around each occurence of the hook. View complete file in SVN (without highlighting).

Understanding Source Code

The best way to understand what a hook does is to look at where it occurs in the source code.

Remember, this hook may occur in more than one file. Moreover, the hook's context may change from version to version.

Source View

This hook occurs 3 times in this file.

Line Code
3372       * Fires immediate before a term-taxonomy relationship is updated.
3373       *
3374       * @since 2.9.0
3375       * @since 6.1.0 The `$args` parameter was added.
3376       *
3377       * @param int    $tt_id    Term taxonomy ID.
3378       * @param string $taxonomy Taxonomy slug.
3379       * @param array  $args     Arguments passed to wp_update_term().
3380       */
3381      do_action( 'edit_term_taxonomy', $tt_id, $taxonomy, $args );
3382
3383      $wpdb->update( $wpdb->term_taxonomy, compact( 'term_id', 'taxonomy', 'description', 'parent' ), array( 'term_taxonomy_id' => $tt_id ) );
3384
3385      /**
3386       * Fires immediately after a term-taxonomy relationship is updated.
3387       *
3388       * @since 2.9.0
3389       * @since 6.1.0 The `$args` parameter was added.
3390       *
 
Line Code
4167                $count += (int) $wpdb->get_var( $wpdb->prepare( "SELECT COUNT(*) FROM $wpdb->term_relationships, $wpdb->posts p1 WHERE p1.ID = $wpdb->term_relationships.object_id AND ( post_status IN ('" . implode( "', '", $post_statuses ) . "') OR ( post_status = 'inherit' AND post_parent > 0 AND ( SELECT post_status FROM $wpdb->posts WHERE ID = p1.post_parent ) IN ('" . implode( "', '", $post_statuses ) . "') ) ) AND post_type = 'attachment' AND term_taxonomy_id = %d", $term ) );
4168           }
4169
4170           if ( $object_types ) {
4171                // phpcs:ignore WordPress.DB.PreparedSQLPlaceholders.QuotedDynamicPlaceholderGeneration
4172                $count += (int) $wpdb->get_var( $wpdb->prepare( "SELECT COUNT(*) FROM $wpdb->term_relationships, $wpdb->posts WHERE $wpdb->posts.ID = $wpdb->term_relationships.object_id AND post_status IN ('" . implode( "', '", $post_statuses ) . "') AND post_type IN ('" . implode( "', '", $object_types ) . "') AND term_taxonomy_id = %d", $term ) );
4173           }
4174
4175           /** This action is documented in wp-includes/taxonomy.php */
4176           do_action( 'edit_term_taxonomy', $term, $taxonomy->name );
4177           $wpdb->update( $wpdb->term_taxonomy, compact( 'count' ), array( 'term_taxonomy_id' => $term ) );
4178
4179           /** This action is documented in wp-includes/taxonomy.php */
4180           do_action( 'edited_term_taxonomy', $term, $taxonomy->name );
4181      }
4182 }
4183
4184 /**
4185  * Updates term count based on number of objects.
 
Line Code
4194  * @param WP_Taxonomy $taxonomy Current taxonomy object of terms.
4195  */
4196 function _update_generic_term_count( $terms, $taxonomy ) {
4197      global $wpdb;
4198
4199      foreach ( (array) $terms as $term ) {
4200           $count = $wpdb->get_var( $wpdb->prepare( "SELECT COUNT(*) FROM $wpdb->term_relationships WHERE term_taxonomy_id = %d", $term ) );
4201
4202           /** This action is documented in wp-includes/taxonomy.php */
4203           do_action( 'edit_term_taxonomy', $term, $taxonomy->name );
4204           $wpdb->update( $wpdb->term_taxonomy, compact( 'count' ), array( 'term_taxonomy_id' => $term ) );
4205
4206           /** This action is documented in wp-includes/taxonomy.php */
4207           do_action( 'edited_term_taxonomy', $term, $taxonomy->name );
4208      }
4209 }
4210
4211 /**
4212  * Creates a new term for a term_taxonomy item that currently shares its term