WordPress Version: 6.1
/**
* Updates cache for thumbnails in the current loop.
*
* @since 3.2.0
*
* @global WP_Query $wp_query WordPress Query object.
*
* @param WP_Query $wp_query Optional. A WP_Query instance. Defaults to the $wp_query global.
*/
function update_post_thumbnail_cache($wp_query = null)
{
if (!$wp_query) {
$wp_query = $GLOBALS['wp_query'];
}
if ($wp_query->thumbnails_cached) {
return;
}
$thumb_ids = array();
foreach ($wp_query->posts as $post) {
$id = get_post_thumbnail_id($post->ID);
if ($id) {
$thumb_ids[] = $id;
}
}
if (!empty($thumb_ids)) {
_prime_post_caches($thumb_ids, false, true);
}
$wp_query->thumbnails_cached = true;
}