функция since 4.4.0

wp_calculate_image_sizes()

Проверено на WordPress 6.9, обновлено Источник: WordPress Developer Resources.

Сигнатура

wp_calculate_image_sizes( string|int[] $size, string|null $image_src = null, array|null $image_meta = null, int $attachment_id ): string|false

Описание

Создаёт значение атрибута 'sizes' для изображения.

Параметры

$size string|int[] обязательный
Размер изображения. Принимает имя любого зарегистрированного размера изображения или массив значений ширины и высоты в пикселях (именно в этом порядке).
$image_src string|null необязательный = null
URL файла изображения.
$image_meta array|null необязательный = null
Метаданные изображения в том виде, в каком их возвращает 'wp_get_attachment_metadata() '.
$attachment_id int необязательный
ID вложения-изображения. При использовании имени размера изображения в качестве аргумента для $size требуется либо $image_meta, либо $attachment_id. Значение по умолчанию — 0.

Возвращаемое значение

string|false

'sizes'

Исходный код

wp-includes/media.php:1595

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 );
}

История изменений

ВерсияОписание
4.4.0 Introduced.

Что будем искать? Например,Продвижение

Этот сайт использует куки-файлы. Оставаясь на сайте, Вы соглашаетесь на их использование. Для получения дополнительной информации, пожалуйста, ознакомьтесь с политикой в отношении персональных данных.