Поддержка формата изображений 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, выполните следующие шаги:
- Перейдите в админ-панель WordPress.
- Найдите раздел Инструменты > Состояние сайта.
- На вкладке Информация раскройте раздел Обработка медиа и проверьте наличие "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 и как проверить поддержку на вашем сервере. Надеюсь, данная информация окажется полезной для вас!