wp_calculate_image_sizes() – Creates a ‘sizes’ attribute value for an image.
You appear to be a bot. Output may be restricted
Description
Creates a 'sizes' attribute value for an image.
Usage
$string|false = wp_calculate_image_sizes( $size, $image_src, $image_meta, $attachment_id );
Parameters
- $size
- ( string|int[] ) required – Image size. Accepts any registered image size name, or an array of width and height values in pixels (in that order).
- $image_src
- ( string ) optional – Optional. The URL to the image file. Default null.
- $image_meta
- ( array ) optional – Optional. The image meta data as returned by 'wp_get_attachment_metadata()'. Default null.
- $attachment_id
- ( int ) optional – Optional. Image attachment ID. Either
$image_meta
or$attachment_id
is needed when using the image size name as argument for `$size`. Default 0.
Returns
string|false A valid source size value for use in a 'sizes' attribute or false.
Source
File name: wordpress/wp-includes/media.php
Lines:
1 to 39 of 39
function wp_calculate_image_sizes( $size, $image_src = null, $image_meta = null, $attachment_id = 0 ) { $width = 0; if ( is_array( $size ) ) { $width = absint( $size[0] ); } elseif ( is_string( $size ) ) { if ( ! $image_meta && $attachment_id ) { $image_meta = wp_get_attachment_metadata( $attachment_id ); } if ( is_array( $image_meta ) ) { $size_array = _wp_get_image_size_from_meta( $size, $image_meta ); if ( $size_array ) { $width = absint( $size_array[0] ); } } } if ( ! $width ) { return false; } // Setup the default 'sizes' attribute. $sizes = sprintf( '(max-width: %1$dpx) 100vw, %1$dpx', $width ); /** * Filters the output of 'wp_calculate_image_sizes()'. * * @since 4.4.0 * * @param string $sizes A source size value for use in a 'sizes' attribute. * @param string|int[] $size Requested image size. Can be any registered image size name, or * an array of width and height values in pixels (in that order). * @param string|null $image_src The URL to the image file or null. * @param array|null $image_meta The image meta data as returned by wp_get_attachment_metadata() or null. * @param int $attachment_id Image attachment ID of the original image or 0. */ return apply_filters( 'wp_calculate_image_sizes', $sizes, $size, $image_src, $image_meta, $attachment_id ); }