wp_get_attachment_image_sizes

The timeline below displays how wordpress function wp_get_attachment_image_sizes has changed across different WordPress versions. If a version is not listed, refer to the next available version below.

WordPress Version: 6.5

/**
 * Retrieves the value for an image attachment's 'sizes' attribute.
 *
 * @since 4.4.0
 *
 * @see wp_calculate_image_sizes()
 *
 * @param int          $attachment_id Image attachment ID.
 * @param string|int[] $size          Optional. Image size. Accepts any registered image size name, or an array of
 *                                    width and height values in pixels (in that order). Default 'medium'.
 * @param array|null   $image_meta    Optional. The image meta data as returned by 'wp_get_attachment_metadata()'.
 *                                    Default null.
 * @return string|false A valid source size value for use in a 'sizes' attribute or false.
 */
function wp_get_attachment_image_sizes($attachment_id, $size = 'medium', $image_meta = null)
{
    $image = wp_get_attachment_image_src($attachment_id, $size);
    if (!$image) {
        return false;
    }
    if (!is_array($image_meta)) {
        $image_meta = wp_get_attachment_metadata($attachment_id);
    }
    $image_src = $image[0];
    $size_array = array(absint($image[1]), absint($image[2]));
    return wp_calculate_image_sizes($size_array, $image_src, $image_meta, $attachment_id);
}

WordPress Version: 5.7

/**
 * Retrieves the value for an image attachment's 'sizes' attribute.
 *
 * @since 4.4.0
 *
 * @see wp_calculate_image_sizes()
 *
 * @param int          $attachment_id Image attachment ID.
 * @param string|int[] $size          Optional. Image size. Accepts any registered image size name, or an array of
 *                                    width and height values in pixels (in that order). Default 'medium'.
 * @param array        $image_meta    Optional. The image meta data as returned by 'wp_get_attachment_metadata()'.
 *                                    Default null.
 * @return string|false A valid source size value for use in a 'sizes' attribute or false.
 */
function wp_get_attachment_image_sizes($attachment_id, $size = 'medium', $image_meta = null)
{
    $image = wp_get_attachment_image_src($attachment_id, $size);
    if (!$image) {
        return false;
    }
    if (!is_array($image_meta)) {
        $image_meta = wp_get_attachment_metadata($attachment_id);
    }
    $image_src = $image[0];
    $size_array = array(absint($image[1]), absint($image[2]));
    return wp_calculate_image_sizes($size_array, $image_src, $image_meta, $attachment_id);
}

WordPress Version: 5.6

/**
 * Retrieves the value for an image attachment's 'sizes' attribute.
 *
 * @since 4.4.0
 *
 * @see wp_calculate_image_sizes()
 *
 * @param int          $attachment_id Image attachment ID.
 * @param string|int[] $size          Optional. Image size. Accepts any registered image size name, or an array of
 *                                    width and height values in pixels (in that order). Default 'medium'.
 * @param array        $image_meta    Optional. The image meta data as returned by 'wp_get_attachment_metadata()'.
 *                                    Default null.
 * @return string|bool A valid source size value for use in a 'sizes' attribute or false.
 */
function wp_get_attachment_image_sizes($attachment_id, $size = 'medium', $image_meta = null)
{
    $image = wp_get_attachment_image_src($attachment_id, $size);
    if (!$image) {
        return false;
    }
    if (!is_array($image_meta)) {
        $image_meta = wp_get_attachment_metadata($attachment_id);
    }
    $image_src = $image[0];
    $size_array = array(absint($image[1]), absint($image[2]));
    return wp_calculate_image_sizes($size_array, $image_src, $image_meta, $attachment_id);
}

WordPress Version: 5.3

/**
 * Retrieves the value for an image attachment's 'sizes' attribute.
 *
 * @since 4.4.0
 *
 * @see wp_calculate_image_sizes()
 *
 * @param int          $attachment_id Image attachment ID.
 * @param array|string $size          Optional. Image size. Accepts any valid image size, or an array of width
 *                                    and height values in pixels (in that order). Default 'medium'.
 * @param array        $image_meta    Optional. The image meta data as returned by 'wp_get_attachment_metadata()'.
 *                                    Default null.
 * @return string|bool A valid source size value for use in a 'sizes' attribute or false.
 */
function wp_get_attachment_image_sizes($attachment_id, $size = 'medium', $image_meta = null)
{
    $image = wp_get_attachment_image_src($attachment_id, $size);
    if (!$image) {
        return false;
    }
    if (!is_array($image_meta)) {
        $image_meta = wp_get_attachment_metadata($attachment_id);
    }
    $image_src = $image[0];
    $size_array = array(absint($image[1]), absint($image[2]));
    return wp_calculate_image_sizes($size_array, $image_src, $image_meta, $attachment_id);
}

WordPress Version: 4.7

/**
 * Retrieves the value for an image attachment's 'sizes' attribute.
 *
 * @since 4.4.0
 *
 * @see wp_calculate_image_sizes()
 *
 * @param int          $attachment_id Image attachment ID.
 * @param array|string $size          Optional. Image size. Accepts any valid image size, or an array of width
 *                                    and height values in pixels (in that order). Default 'medium'.
 * @param array        $image_meta    Optional. The image meta data as returned by 'wp_get_attachment_metadata()'.
 *                                    Default null.
 * @return string|bool A valid source size value for use in a 'sizes' attribute or false.
 */
function wp_get_attachment_image_sizes($attachment_id, $size = 'medium', $image_meta = null)
{
    if (!$image = wp_get_attachment_image_src($attachment_id, $size)) {
        return false;
    }
    if (!is_array($image_meta)) {
        $image_meta = wp_get_attachment_metadata($attachment_id);
    }
    $image_src = $image[0];
    $size_array = array(absint($image[1]), absint($image[2]));
    return wp_calculate_image_sizes($size_array, $image_src, $image_meta, $attachment_id);
}

WordPress Version: 4.4

/**
 * Retrieves the value for an image attachment's 'sizes' attribute.
 *
 * @since 4.4.0
 *
 * @see wp_calculate_image_sizes()
 *
 * @param int          $attachment_id Image attachment ID.
 * @param array|string $size          Optional. Image size. Accepts any valid image size, or an array of width
 *                                    and height values in pixels (in that order). Default 'medium'.
 * @param array        $image_meta    Optional. The image meta data as returned by 'wp_get_attachment_metadata()'.
 *                                    Default null.
 * @return string|bool A valid source size value for use in a 'sizes' attribute or false.
 */
function wp_get_attachment_image_sizes($attachment_id, $size = 'medium', $image_meta = null)
{
    if (!$image = wp_get_attachment_image_src($attachment_id, $size)) {
        return false;
    }
    if (!is_array($image_meta)) {
        $image_meta = get_post_meta($attachment_id, '_wp_attachment_metadata', true);
    }
    $image_src = $image[0];
    $size_array = array(absint($image[1]), absint($image[2]));
    return wp_calculate_image_sizes($size_array, $image_src, $image_meta, $attachment_id);
}