WordPress at a glance
function is not described

_update_term_count_on_transition_post_status() WP 3.3.0

Update the custom taxonomies' term counts when a post's status is changed.

For example, default posts term counts (for custom taxonomies) don't include private / draft posts.

No Hooks.


Null. Nothing.


_update_term_count_on_transition_post_status( $new_status, $old_status, $post );
$new_status(string) (required)
New post status.
$old_status(string) (required)
Old post status.
$post(WP_Post) (required)
Post object.


Since 3.3.0 Introduced.

Code of update term count on transition post status: wp-includes/post.php WP 5.2.2

function _update_term_count_on_transition_post_status( $new_status, $old_status, $post ) {
	// Update counts for the post's terms.
	foreach ( (array) get_object_taxonomies( $post->post_type ) as $taxonomy ) {
		$tt_ids = wp_get_object_terms( $post->ID, $taxonomy, array( 'fields' => 'tt_ids' ) );
		wp_update_term_count( $tt_ids, $taxonomy );