WordPress Version: 5.9
/**
* Retrieve URL for an attachment thumbnail.
*
* @since 2.1.0
*
* @param int $post_id Optional. Attachment ID. Default is the ID of the global `$post`.
* @return string|false Thumbnail URL on success, false on failure.
*/
function wp_get_attachment_thumb_url($post_id = 0)
{
$post_id = (int) $post_id;
$post = get_post($post_id);
if (!$post) {
return false;
}
$url = wp_get_attachment_url($post->ID);
if (!$url) {
return false;
}
$sized = image_downsize($post_id, 'thumbnail');
if ($sized) {
return $sized[0];
}
$thumb = wp_get_attachment_thumb_file($post->ID);
if (!$thumb) {
return false;
}
$url = str_replace(wp_basename($url), wp_basename($thumb), $url);
/**
* Filters the attachment thumbnail URL.
*
* @since 2.1.0
*
* @param string $url URL for the attachment thumbnail.
* @param int $post_id Attachment ID.
*/
return apply_filters('wp_get_attachment_thumb_url', $url, $post->ID);
}