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