функция
since 2.5.0
wp_get_attachment_image_src()
Проверено на WordPress 6.9, обновлено Источник: WordPress Developer Resources.
Сигнатура
wp_get_attachment_image_src( int $attachment_id, string|int[] $size = 'thumbnail', bool $icon = false ): array|false
Описание
Получает изображение, представляющее вложение.
Параметры
$attachment_id
int
обязательный
Идентификатор вложения-изображения.
$size
string|int[]
необязательный
= 'thumbnail'
Размер изображения. Принимает имя любого зарегистрированного размера изображения или массив значений ширины и высоты в пикселях (именно в таком порядке). Значение по умолчанию 'thumbnail'.
$icon
bool
необязательный
= false
Использовать ли значок типа MIME в качестве запасного варианта для изображения.
Возвращаемое значение
array|false
0 stringURL источника изображения. 1 intШирина изображения в пикселях. 2 intВысота изображения в пикселях. 3 boolЯвляется ли изображение изменённым по размеру.
Исходный код
wp-includes/media.php:976
function wp_get_attachment_image_src( $attachment_id, $size = 'thumbnail', $icon = false ) {
// Get a thumbnail or intermediate image if there is one.
$image = image_downsize( $attachment_id, $size );
if ( ! $image ) {
$src = false;
if ( $icon ) {
$src = wp_mime_type_icon( $attachment_id, '.svg' );
if ( $src ) {
/** This filter is documented in wp-includes/post.php */
$icon_dir = apply_filters( 'icon_dir', ABSPATH . WPINC . '/images/media' );
$src_file = $icon_dir . '/' . wp_basename( $src );
list( $width, $height ) = wp_getimagesize( $src_file );
$ext = strtolower( substr( $src_file, -4 ) );
if ( '.svg' === $ext ) {
// SVG does not have true dimensions, so this assigns width and height directly.
$width = 48;
$height = 64;
} else {
list( $width, $height ) = wp_getimagesize( $src_file );
}
}
}
if ( $src && $width && $height ) {
$image = array( $src, $width, $height, false );
}
}
/**
* Filters the attachment image source result.
*
* @since 4.3.0
*
* @param array|false $image {
* Array of image data, or boolean false if no image is available.
*
* @type string 0 Image source URL.
* @type int 1 Image width in pixels.
* @type int 2 Image height in pixels.
* @type bool 3 Whether the image is a resized image.
* }
* @param int $attachment_id Image attachment ID.
* @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 bool $icon Whether the image should be treated as an icon.
*/
return apply_filters( 'wp_get_attachment_image_src', $image, $attachment_id, $size, $icon );
}
История изменений
| Версия | Описание |
|---|---|
| 2.5.0 | Introduced. |

