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