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
3290       * Fires immediate before a term-taxonomy relationship is updated.
3291       *
3292       * @since 2.9.0
3293       * @since 6.1.0 The `$args` parameter was added.
3294       *
3295       * @param int    $tt_id    Term taxonomy ID.
3296       * @param string $taxonomy Taxonomy slug.
3297       * @param array  $args     Arguments passed to wp_update_term().
3298       */
3299      do_action( 'edit_term_taxonomy', $tt_id, $taxonomy, $args );
3300
3301      $wpdb->update( $wpdb->term_taxonomy, compact( 'term_id', 'taxonomy', 'description', 'parent' ), array( 'term_taxonomy_id' => $tt_id ) );
3302
3303      /**
3304       * Fires immediately after a term-taxonomy relationship is updated.
3305       *
3306       * @since 2.9.0
3307       * @since 6.1.0 The `$args` parameter was added.
3308       *
 
Line Code
4084                $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 ) );
4085           }
4086
4087           if ( $object_types ) {
4088                // phpcs:ignore WordPress.DB.PreparedSQLPlaceholders.QuotedDynamicPlaceholderGeneration
4089                $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 ) );
4090           }
4091
4092           /** This action is documented in wp-includes/taxonomy.php */
4093           do_action( 'edit_term_taxonomy', $term, $taxonomy->name );
4094           $wpdb->update( $wpdb->term_taxonomy, compact( 'count' ), array( 'term_taxonomy_id' => $term ) );
4095
4096           /** This action is documented in wp-includes/taxonomy.php */
4097           do_action( 'edited_term_taxonomy', $term, $taxonomy->name );
4098      }
4099 }
4100
4101 /**
4102  * Updates term count based on number of objects.
 
Line Code
4111  * @param WP_Taxonomy $taxonomy Current taxonomy object of terms.
4112  */
4113 function _update_generic_term_count( $terms, $taxonomy ) {
4114      global $wpdb;
4115
4116      foreach ( (array) $terms as $term ) {
4117           $count = $wpdb->get_var( $wpdb->prepare( "SELECT COUNT(*) FROM $wpdb->term_relationships WHERE term_taxonomy_id = %d", $term ) );
4118
4119           /** This action is documented in wp-includes/taxonomy.php */
4120           do_action( 'edit_term_taxonomy', $term, $taxonomy->name );
4121           $wpdb->update( $wpdb->term_taxonomy, compact( 'count' ), array( 'term_taxonomy_id' => $term ) );
4122
4123           /** This action is documented in wp-includes/taxonomy.php */
4124           do_action( 'edited_term_taxonomy', $term, $taxonomy->name );
4125      }
4126 }
4127
4128 /**
4129  * Creates a new term for a term_taxonomy item that currently shares its term