Поддержка формата AVIF в WordPress: новый стандарт изображений

Поддержка формата изображений AVIF в WordPress 6.5

Начин��я с версии WordPress 6.5, в системе доступен современный формат изображений AVIF.

Что такое AVIF?

AVIF (AV1 Image File Format) — это новый формат изображений, который значительно улучшает качество и сжатие по сравнению с другими форматами, такими как JPEG, PNG и даже WebP.

Преимущества AVIF:

  • Меньший размер файлов: Изображения в формате AVIF могут быть на 50% меньше по размеру, чем JPEG, при сохранении того же качества.
  • Широкий цветовой диапазон: AVIF поддерживает широкий диапазон цветов, включая HDR, что делает изображения ярче и четче.
  • Поддержка адаптивных изображений: AVIF поддерживает адаптивные изображения, приоритет загрузки и ленивую загрузку, что WordPress обрабатывает по умолчанию.

Поддержка AVIF в браузерах

Формат AVIF поддерживается всеми основными браузерами, поэтому большинство веб-сайтов могут начать использовать этот формат уже сегодня.

Если ваш сайт посещается пользователями, которые используют браузеры без поддержки формата AVIF, вы можете добавить полифил — специальный скрипт, который поможет обеспечить совместимость.

Использование изображений AVIF в WordPress

С WordPress 6.5 вы можете загружать и использовать изображения AVIF так же, как и изображения в формате JPEG или PNG. Единственное требование — ваш сервер или хостинг должны поддерживать формат AVIF.

Проверка поддержки AVIF на сервере

На сайте изображения обрабатываются с помощью одной из библиотек: Imagick или GD. Необходимо убедиться, что на вашем сервере установлены современные версии этих библиотек, которые могут работать с форматом AVIF.

Чтобы проверить, поддерживает ли используемая библиотека формат AVIF, выполните следующие шаги:

  1. Перейдите в админ-панель WordPress.
  2. Найдите раздел Инструменты > Состояние сайта.
  3. На вкладке Информация раскройте раздел Обработка медиа и проверьте наличие "AVIF" в списке поддерживаемых форматов.

Изображение состояния поддержки формата AVIF

Поддержка формата AVIF в библиотеках Imagick и GD

Imagick

Поддержка формата AVIF в библиотеке Imagick зависит не только от версии самой библиотеки, но и от версии ImageMagick, на основе которой она работает. Поддержка AVIF была добавлена в ImageMagick с версии 7.0.10-58.

Чтобы работать с AVIF через Imagick, необходимо установить соответствующую версию ImageMagick, а также совместимую версию Imagick.

GD

Что касается библиотеки GD, поддержка формата AVIF была добавлена в PHP 8.1. Однако, чтобы использовать этот функционал, ваша версия GD также должна быть скомпилирована с поддержкой AVIF. Проверьте наличие поддержки AVIF с помощью функций phpinfo() или gd_info().

Создание изображений в формате AVIF

Многие инструменты редактирования изображений поддерживают экспорт в формат AVIF.

Для конвертации изображений также можно использовать веб-инструменты (например, Squoosh) или CLI-инструменты (например, avif-cli).

После сохранения изображений в формате AVIF загрузите их в WordPress и используйте так же, как и любые другие изображения.

WordPress также может автоматически создавать изображения AVIF (подробнее в разделе FAQ ниже).

Часто задаваемые вопросы (FAQ)

Как установить уровень сжатия для изображений AVIF?

Используйте фильтр wp_editor_set_quality, чтобы задать настройки качества. Параметр $mime_type позволяет устанавливать параметры по типу файла:


// Изменить качество изображений AVIF
add_filter('wp_editor_set_quality', 'filter_avif_quality', 10, 2);
function filter_avif_quality($quality, $mime_type) {
if ('image/avif' === $mime_type) {
return 75; // Установить качество 75
}
return $quality;
}

Как получить безубыточное изображение AVIF?

Использование уровня сжатия 100 установит AVIF в безубыточный режим. По умолчанию качество установлено на 82.

Может ли WordPress создавать изображения AVIF при загрузке JPEG?

Да, разработчики могут использовать фильтр image_editor_output_format, чтобы задать такой тип преобразования при загрузке изображений.


// Конвертировать JPEG в AVIF при загрузке изображения
add_filter('image_editor_output_format', 'filter_image_editor_output_format');
function filter_image_editor_output_format($formats) {
$formats['image/jpeg'] = 'image/avif';
return $formats;
}

Если я использую WordPress Multisite, будут ли все мои сайты поддерживать изображения AVIF?

Нет, в режиме мультисайта типы файлов, доступных для загрузки при создании сайта, хранятся. Мы продолжаем работу над улучшениями этой функции.

На данный момент, чтобы обеспечить поддержку файлов AVIF на всех существующих сайтах в сети, можно использовать фильтр site_option в mu-plugin (мультифункциональный плагин), где вы добавляете avif в разрешенные типы файлов для всех сайтов в сети.


// Включить поддержку AVIF для всех сайтов в сети
add_filter('site_option_upload_filetypes', 'filter_site_option_upload_filetypes');
function filter_site_option_upload_filetypes($filetypes) {
$filetypes = explode(' ', $filetypes);
if (!in_array('avif', $filetypes, true)) {
$filetypes[] = 'avif';
}
return implode(' ', $filetypes);
}


Теперь вы знаете, что такое формат AVIF, как его использовать в WordPress и как проверить поддержку на вашем сервере. Надеюсь, данная информация окажется полезной для вас!

Leave a Reply

Ваш адрес email не будет опубликован. Обязательные поля помечены *