wp_get_attachment_image_srcset()
Retrieves the value for an image attachment's 'srcset' attribute.
1 time — 0.001658 sec (very slow) | 50000 times — 35.26 sec (very slow)
No Hooks.
Return
String|false
. A 'srcset' value string or false.
Usage
wp_get_attachment_image_srcset( $attachment_id, $size, $image_meta );
- $attachment_id(int) (required)
- Image attachment ID.
- $size(string|int[])
- Image size. Accepts any registered image size name, or an array of width and height values in pixels (in that order).
Default: 'medium' - $image_meta(array)
- The image meta data as returned by wp_get_attachment_metadata().
Default: null
Examples
#1 Get the srcset
value for the full
size image
echo wp_get_attachment_image_srcset( 6587, 'full' ); // output: // http://example.com/wp-content/uploads/2015/12/WP-Recall-0-120x69.jpg 120w, http://example.com/wp-content/uploads/2015/12/WP-Recall-0.jpg 975w
#2 Add the srcset
attribute to the image
$attachment_id = 6587; printf( '<img src="%s" srcset="%s">', wp_get_attachment_image_url( $attachment_id ), wp_get_attachment_image_srcset( $attachment_id, 'full' ) ); /* output: <img src="/wp-content/uploads/2015/12/WP-Recall-0-80x80.jpg" srcset="http://wp-kama.ru/wp-content/uploads/2015/12/WP-Recall-0-120x69.jpg 120w, http://wp-kama.ru/wp-content/uploads/2015/12/WP-Recall-0.jpg 975w" > */
#3 Adding the necessary attributes to the IMG
<img src="<?php echo wp_get_attachment_image_url( $attachment_id, 'large' ) ?>" srcset="<?php echo wp_get_attachment_image_srcset( $attachment_id, 'large' ) ?>" sizes="<?php echo wp_get_attachment_image_sizes( $attachment_id, 'large' ) ?>" >
#4 Using $size as an array of width and height dimensions:
<?php // Specifying width of 400 (px) and height of 200 (px). $srcset = wp_get_attachment_image_srcset( $attachment_id, [ 400, 200 ] ); ?> <img src="<?php header_image(); ?>" srcset="<?php echo esc_attr( $srcset ); ?>">
Notes
Changelog
Since 4.4.0 | Introduced. |
wp_get_attachment_image_srcset() wp get attachment image srcset code WP 6.1.1
function wp_get_attachment_image_srcset( $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_srcset( $size_array, $image_src, $image_meta, $attachment_id ); }