eurobyte.ru - мощные сервера с Дата-центрами в Нидерландах и Москве. От 159 ₽/мес.

jpeg_quality │ хук-фильтр │ WP 2.5.0

Устанавливает качество сжатия создаваемых JPG-файлов.

По умолчанию WordPress создаёт файлы с качеством сжатия 82%. Этот фильтр позволяет уменьшить или увеличить этот параметр.

В большинстве случаев нет необходимости изменять этот параметр. Однако, если вы хотите сэкономить на нескольких килобайтах, то было бы неплохо установить качество равное 80 или 70.

Изменение этого параметра влияет на качество только создаваемых из оригинала миниатюр, сам оригинал остается нетронутым...

Использование

add_filter( 'jpeg_quality', 'wp_kama_jpeg_quality_filter', 10, 2 );

/**
 * Function for `jpeg_quality` filter-hook.
 * 
 * @param int    $quality Quality level between 0 (low) and 100 (high) of the JPEG.
 * @param string $context Context of the filter.
 *
 * @return int
 */
function wp_kama_jpeg_quality_filter( $quality, $context ){
	// filter...
	return $quality;
}
$quality(число)
Коэффициент качества сжатия. Может быть от 0 (максимальное сжатие) - 100 (без сжатия).

Примеры

#1 Пример использования

Предположим, вы фотограф и ведёте свой блог. При публикации фотографий их качество будет уменьшено, но вам нужно, чтобы WordPress работал с картинками без уменьшения их качества, то есть нужно 100% качество.

Сделать это можно, использовав этот хук. Для этого нужно добавить в файл темы functions.php такой код:

add_filter( 'jpeg_quality', 'filter_function_name_11' );
function filter_function_name_11( $quality ){
	return 90;
}

Коротко его можно записать так (для версий PHP выше 5.3):

add_filter( 'jpeg_quality', function( $quality ){
	return 100;
} );

#2 Вариант использования PHP 7.4

add_filter( 'jpeg_quality', fn ( $q ) => 100 );

Список изменений

С версии 2.5.0 Введена.

Где вызывается хук

WP_Image_Editor::set_quality()
jpeg_quality
wp_save_image_file()
jpeg_quality
wp_get_image_encode_quality()
jpeg_quality
wp-includes/class-wp-image-editor.php 288
$quality = apply_filters( 'jpeg_quality', $quality, 'image_resize' );
wp-admin/includes/image-edit.php 498
return imagejpeg( $image, $filename, apply_filters( 'jpeg_quality', 90, 'edit_image' ) );
wp-includes/media.php 1017
$quality = apply_filters( 'jpeg_quality', $quality, 'image_resize' );

Где используется хук в WordPress

Использование не найдено.
  • Ліпнина

    Оформлення поліуретанова ліпнина Orac Decor.

    orac-decor.com

8 комментариев