Function: image_get_intermediate_size

image_get_intermediate_size( integer $post_id, array | string $size )

Retrieves the image's intermediate size (resized) path, width, and height.

The $size parameter can be an array with the width and height respectively. If the size matches the 'sizes' metadata array for width and height, then it will be used. If there is no direct match, then the nearest image size larger than the specified size will be used. If nothing is found, then the function will break out and return false.

The metadata 'sizes' is used for compatible sizes that can be used for the parameter $size value.

The url path will be given, when the $size parameter is a string.

If you are passing an array for the $size, you should consider using add_image_size() so that a cropped version is generated. It's much more efficient than having to find the closest-sized image and then having the browser scale down the image.

Parameters

Name Type(s) Default Value Description
$post_id integer

Attachment ID.

$size array | string 'thumbnail'

Optional. Image size. Accepts any valid image size, or an array of width and height values in pixels (in that order). Default 'thumbnail'.

Returns

false | array

$data { Array of file relative path, width, and height on success. Additionally includes absolute path and URL if registered size is passed to $size parameter. False on failure.

@type string $file   Image's path relative to uploads directory
@type int    $width  Width of image
@type int    $height Height of image
@type string $path   Image's absolute filesystem path.
@type string $url    Image's URL.

}

WordPress Developer Newsletter

Stay on top of the latest WordPress API changes, developer tool updates, security alerts and more.