Advertisements

update_post_caches

Definition:
function update_post_caches(&$posts, $post_type = 'post', $update_term_cache = true, $update_meta_cache = true) {}

Call major cache updating functions for list of Post objects.

Parameters

  • array $posts: Array of Post objects
  • string $post_type: The post type of the posts in $posts. Default is ‘post’.
  • bool $update_term_cache: Whether to update the term cache. Default is true.
  • bool $update_meta_cache: Whether to update the meta cache. Default is true.
  • &$posts

Source code

function update_post_caches(&$posts, $post_type = 'post', $update_term_cache = true, $update_meta_cache = true) {

	// No point in doing all this work if we didn't match any posts.

	if ( !$posts )

		return;



	update_post_cache($posts);



	$post_ids = array();

	foreach ( $posts as $post )

		$post_ids[] = $post->ID;



	if ( empty($post_type) )

		$post_type = 'post';



	if ( $update_term_cache ) {

		if ( is_array($post_type) ) {

			$ptypes = $post_type;

		} elseif ( 'any' == $post_type ) {

			// Just use the post_types in the supplied posts.

			foreach ( $posts as $post )

				$ptypes[] = $post->post_type;

			$ptypes = array_unique($ptypes);

		} else {

			$ptypes = array($post_type);

		}



		if ( ! empty($ptypes) )

			update_object_term_cache($post_ids, $ptypes);

	}



	if ( $update_meta_cache )

		update_postmeta_cache($post_ids);

}

3197

Advertisements

No comments yet... Be the first to leave a reply!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: