W3cubDocs

/WordPress

_update_term_count_on_transition_post_status( string $new_status, string $old_status, WP_Post $post )

Updates the custom taxonomies’ term counts when a post’s status is changed.

Description

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

Parameters

$new_statusstringrequired
New post status.
$old_statusstringrequired
Old post status.
$postWP_Postrequired
Post object.

Source

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 );
	}
}

Changelog

Version Description
3.3.0 Introduced.

© 2003–2024 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/functions/_update_term_count_on_transition_post_status