WebP Converter для СМИ

Описание

Ускорьте свой сайт, предоставляя изображения WebP. Заменив файлы в стандартных форматах JPEG, PNG и GIF на формат WebP, вы можете сэкономить более половины веса страницы без потери качества.

При установке плагина вам больше ничего не нужно делать. Ваши текущие изображения будут преобразованы в новый формат. Пользователи будут автоматически получать новые, намного более «легкие» изображения, чем оригинальные.

На сегодняшний день почти 80% пользователей используют браузеры, которые поддерживают формат WebP. Время загрузки вашего сайта во многом зависит от его веса. Теперь вы можете ускорить его за несколько секунд без особых усилий!

Это будет выгодно как для ваших пользователей, которым не нужно загружать так много данных, так и для сервера, который будет загружен меньше. Помните, что оптимизированный веб-сайт также влияет на ваш рейтинг в Google.

Новая функция

Теперь вы также можете конвертировать файлы из каталога /uploads в WebP и генерировать другие плагины! Это позволяет полную интеграцию с форматом WebP!

Как это работает?

  • Добавляя изображения в медиатеку, они автоматически конвертируются и сохраняются в отдельном каталоге.
  • Если вы только что установили плагин, вы можете конвертировать все существующие изображения одним щелчком мыши.
  • Преобразование в формат WebP работает для всех размеров изображения. В качестве WebP вы увидите все изображения, добавленные в Медиа Библиотеку.
  • Изображения конвертируются с использованием PHP GD или Imagick с расширением (вы можете изменить уровень сжатия) .
  • Когда браузер пытается загрузить файл изображения, сервер проверяет, поддерживает ли он файлы image/webp и существует ли файл.
  • Если все в порядке, вместо исходного изображения браузер получит его эквивалент в формате WebP.
  • Плагин не изменяет URL-адреса изображений, поэтому нет проблем с сохранением HTML-кода веб-сайта в кэш-памяти и время его генерации не увеличивается. Не имеет значения, отображается ли изображение как img HTML-тег или вы используете background-image. Работает всегда!
  • Имя загруженного изображения не содержит расширение WebP. Только источник загруженного файла изменяется на файл WebP. В результате у вас всегда есть один URL к файлу. Независимо от того, поддерживает ли браузер WebP или нет.
  • URL-адреса изображений модифицируются с помощью модуля mod_rewrite на сервере, то есть то же самое, и благодаря этому мы можем использовать дружественные ссылки в WordPress. Кроме того, тип MIME отправляемого файла изменяется на image/webp.
  • При попытке сохранить изображение на диск (например, нажав Сохранить как …) исходное изображение будет сохранено. WebP используется только для загрузки браузера.
  • В результате пользователи загружают менее половины данных, а сам сайт загружается быстрее!

Поддержка дополнительных каталогов

Вы также можете вручную конвертировать изображения из каталогов /plugins and /themes, а также другие изображения из каталога /uploads, которых нет в библиотека мультимедиа (которая, например, создается другими плагинами). Это позволяет полную интеграцию с форматом WebP и максимальное ускорение вашего сайта.

Изображения WebP — это будущее!

Поднимите свой сайт на новый уровень сейчас! Установите плагин и наслаждайтесь сайтом, который загружается быстрее. Конечно, вы и ваши пользователи это оценят.

Поддержка разработки плагина

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

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

Пожалуйста, прочитайте FAQ ниже. Спасибо за то, что вы с нами!

Скриншоты

  • Снимок экрана с панелью настроек
  • Снимок экрана при восстановлении изображений

Установка

  1. Загрузите файлы плагинов в каталог /wp-content/plugins/webp-converter-for-media или установите плагин непосредственно через экран плагинов WordPress.
  2. Активируйте плагин через экран Плагины в панели администратора WordPress.
  3. Используйте экран Настройки -> Настройки -> WebP Converter для настройки плагина.
  4. Нажмите на кнопку Восстановить все.
  5. Проверьте, все ли работает нормально.

Вот и все! Ваш сайт уже загружается быстрее!

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

Как получить техническую поддержку? (прежде чем обратиться за помощью)

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

При добавлении темы выполните следующие действия и ответьте на каждый из них:

1. Есть ли у вас ошибки на странице настроек плагина? Если да, то какой? Вы проконсультировались с администратором сервера или разработчиком? Если нет, пожалуйста, сделайте это сначала.

2. URL вашего сайта. Если ваш сайт не является общедоступным, добавьте его в тестовую среду.

3.. Соответствует ли ваш сервер техническим требованиям, описанным в разделе часто задаваемых вопросов? Пожалуйста, отправьте конфигурацию вашего сервера (ссылку на нее можно найти на странице настроек плагина в разделе «Мы ждем вашего сообщения» ) — сделайте скриншот ВСЕЙ страницы и отправьте нам.

4. Вы используете CDN? Если да, см. Вопрос «Поддерживает ли плагин CDN?» в разделе часто задаваемых вопросов о плагине.

5. Убедитесь, что в каталоге /wp-content/uploads-webpc находятся все файлы, которые необходимо преобразовать.

Если нет, пожалуйста, включите WP_DEBUG_LOG в своем wp-config.php (подробнее об отладке: https://codex.wordpress.org/WP_DEBUG). Вот что вы должны иметь в этом файле:

define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);

Затем выполните следующие действия:

  1. Зайдите в панель администрирования и перейдите на страницу настроек плагина.
  2. Запустите Google Chrome и включите Dev Tools (F12).
  3. Перейдите на вкладку Сеть и выберите фильтрацию для XHR (XHR и Fetch).
  4. Нажмите кнопку Regenerate All на странице настроек плагина (не закрывайте консоль в течение этого времени) .
  5. Зайдите в Инструменты и найдите запрос, который отмечен красным. Нажмите на него и перейдите на вкладку Preview .
  6. Сделайте скриншот всей информации, представленной там.
  7. Проверьте также, есть ли у вас ошибки в /wp-content/debug.log?

Отправить скриншот из консоли, если произошла ошибка при конвертации изображений. Если у вас есть ошибки в /wp-content/debug.log отправляйте их.

6. Если на предыдущем этапе выяснилось, что у вас есть файлы, выполните тест, описанный в разделе часто задаваемых вопросов Как проверить, работает ли плагин? . Пожалуйста, пришлите скриншот Настроек с результатами теста.

7. Содержимое ваших файлов .htaccess из каталогов /wp-content, /wp-content/uploads и /wp-content/uploads-webpc (вставка кода с использованием шорткода CODE в редакторе).

8 . Используете ли вы какие-либо плагины или действия из этого FAQ? Если так, перечислите их всех.

9. Какую версию плагина вы используете? Если это не последнее, обновите и проверьте все снова.

10. Используемая версия WordPress.

11. Список всех используемых вами плагинов. Вы пробовали проверить работу плагина, отключив все остальные и активировав тему по умолчанию? Если нет, пожалуйста, попробуйте по возможности. Это очень важно, потому что другие плагины или темы могут вызвать проблемы. Следовательно, Мы рекомендуем отключить все необходимые плагины и включить тему по умолчанию.

Пожалуйста, не забудьте включить ответы на все 11 вопросов, добавив ветку. Это намного проще и ускорит решение вашей проблемы.

Ошибка на экране настроек плагина?

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

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

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

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

Ошибка при конвертации?

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

Если вы получили ошибку: Файл "%s" не существует. Пожалуйста, проверьте путь к файлу. означает, что file_exists () работает в PHP вернул false , используя путь к файлу, указанный в сообщении об ошибке. Проверьте этот путь и убедитесь, что он правильный.

Если вы получили сообщение об ошибке: Файл "%s" не читается. Проверьте права доступа к файлам. означает, что функция is_readable () в PHP вернул false , используя путь к файлу, указанный в сообщении об ошибке.
Проверьте разрешения для файла и каталог, в котором находится файл.

Если вы получили сообщение об ошибке: "%s" не является допустимым файлом изображения. означает, что файл каким-то образом поврежден. Загрузите файл на диск, сохраните его снова с помощью любой графической программы и снова добавьте на страницу. Если ошибка относится к отдельным изображениям, вы можете игнорировать ее — будут загружаться только исходные изображения, а не WebP.

В случае вышеуказанных проблем обращение в форум поддержки будет бесполезным . К сожалению, мы не можем помочь вам, если ваши файлы повреждены. Вы должны это исправить сами. Если вы ранее использовали другие инструменты, которые изменили исходные файлы и повредили их, вы больше ничего не сможете сделать.

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

Какие требования к плагину?

Practically every hosting meets these requirements. You must use PHP at least 7.0 and have the GD or Imagick extension installed. The extension must support WebP format. If you have an error saying that the GD or Imagick library are not installed, but you have it installed then they are probably incorrectly configured and do not have WebP support.

Это обязательные расширения PHP, используемые WordPress для создания миниатюр. На вашем сервере также должны быть включены модули mod_mime, mod_rewrite and mod_expires.

Пример правильной конфигурации сервера можно найти здесь . Ссылку на текущую конфигурацию можно найти в панели администрирования, на странице плагина управления в разделе «Мы ждем вашего сообщения» (или используя путь URL-адреса: /wp-admin/options-general.php?page=webpc_admin_page&action=server).

Note the items marked in red. If the values marked in red do not appear in your case, it means that your server does not meet the technical requirements. Pay attention to the WebP Support value for the GD library and WEBP in the list of supported extensions for the Imagick library.

In a situation where your server does not meet the technical requirements, please contact your server Administrator. We are not able to help you. Please do not contact us about this matter, because this is a server configuration problem, not a plugin.

Также REST API должен быть включен и работать без дополнительных ограничений. Если у вас есть проблемы с этим, пожалуйста, свяжитесь с разработчиком, который создал ваш сайт. Он должен легко найти проблему с неработающим REST API.

Какие ограничения?

Размер изображения ограничен. Его разрешение не может быть больше, чем 8192 x 8192px. Это связано с ограничениями библиотеки PHP.

Помните, что Safari и Internet Explorer не поддерживают формат WebP. Поэтому с помощью этих браузеров вы получите оригинальные изображения.

Подробнее о поддержке WebP можно узнать в браузерах here.

Damaged images on iOS or other browsers

Плагин использует правила в файле .htaccess для перенаправления с исходного изображения на изображение в формате WebP. Проверяет, существует ли файл WebP и поддерживает ли ваш браузер формат WebP. Это происходит каждый раз, когда вы пытаетесь загрузить изображение.

При входе с устройства, поддерживающего WebP, оно будет перенаправлено. Однако, если кто-то использует браузер, который не поддерживает WebP, перенаправление не будет работать, и вы получите оригинальный файл.

Если вы видите поврежденные изображения в браузерах, которые не поддерживают WebP, это означает, что ваш сервер использует кэш для перезаписей из файла .htaccess. Тогда плагин не будет работать должным образом, потому что сервер вместо чтения правил из файла .htaccess каждый раз использует свой кэш и выполняет перенаправление автоматически.

Как вы можете это проверить? Когда вы отключаете плагин, перезаписанные файлы из файла .htaccess удаляются. Это означает, что вы должны видеть исходные изображения в каждом браузере. Если это не так, и вы видите принудительные перенаправления в файлы WebP, это означает, что ваш сервер запоминает перенаправления, которые вы сделали ранее, и использует кэш.

В этой ситуации, пожалуйста, обратитесь к администратору сервера. Каждая конфигурация отличается. Это может быть, например, модуль mod_pagespeed или другой подобный. Эта функция должна быть отключена, чтобы сервер считывал и выполнял правила из файла .htaccess при каждой загрузке изображений.
Это нельзя игнорировать, потому что это вызовет проблемы.

Что делать после установки плагина?

После установки плагина вы должны конвертировать все существующие изображения.

В админ-панели WordPress на вкладке Настройки -> WebP Converter есть модуль, позволяющий обрабатывать все ваши изображения.

Он использует WordPress REST API, загружая адреса всех изображений и постепенно преобразовывая все файлы.

Этот процесс может занять более десяти минут в зависимости от количества файлов.

Это нужно сделать один раз после установки плагина. Новые изображения из библиотеки мультимедиа будут автоматически конвертированы. Для других изображений, например из каталога /themes вы должны начать конвертацию вручную после добавления новых изображений.

Как проверить, работает ли плагин?

Когда вы установили плагин и конвертировали все изображения, выполните следующие действия:

  1. Запустите Google Chrome и включите Инструменты разработчика (F12).
  2. Перейдите на вкладку Сеть и выберите фильтрацию для Img (Изображения).
  3. Обновите страницу своего сайта.
  4. Проверьте список загруженных изображений. Примечание столбец Type.
  5. Если есть значение webp, то все работает нормально.
  6. Помните, что этот плагин не меняет URL. Это означает, что, например, ссылка будет иметь путь к файлу .jpg, но вместо исходного файла .jpg будет загружен файл .jpg.webp.
  7. Кроме того, вы можете проверить вес сайта до и после использования плагина. Разница будет огромной!
  8. Дополнительная информация: здесь

Please remember that URLs will remain unchanged. When you open the image in a new tab or look at its URL, you’ll see the original URL. When you try to save the image to disk (e.g. by clicking Save as…) the original image will be saved.

WebP is only used when loading a image on a website. This is done by the rules from the .htaccess file, on the server side, without the visible URL change to the image. Yes, it can be called magic 🙂

That is why the plugin should be tested in Dev Tools. If the Type of file is WebP, then everything is working properly. You can also turn off the plugin for a moment and check the weight of your website, then turn it on and test again. The difference should be visible.

The operation of the plugin for non-advanced users may sometimes be less understood, but everything is fine. Thanks to this, regardless of whether your browser supports WebP or not, everything works without problems.

Только изображения из каталога /uploads конвертируются автоматически. Если вы используете другие плагины, которые также сохраняют изображения в каталоге /uploads, это может не сработать. Поэтому проверьте настройки плагина и попробуйте снова конвертировать все изображения.

Почему некоторые изображения отсутствуют в WebP?

Если преобразованное изображение в формате WebP больше исходного, браузер будет использовать исходный файл. И этот преобразованный файл будет удален. Следовательно, в списке вы также можете видеть файлы, отличные от WebP. Когда это произойдет, вы получите информацию в debug.log.

Если вы хотите принудительно использовать файлы WebP, снимите флажок Автоматическое удаление файлов WebP, размер которых превышает исходный в настройках плагина. Затем нажмите кнопку Восстановить все , чтобы снова преобразовать все изображения.

Помните, что этот плагин поддерживает изображения из каталога /wp-content, например файлы, загруженные из библиотеки мультимедиа. Перенаправления не будут работать, если ваши изображения загружаются из другого домена, то есть из внешней службы.

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

Где хранятся конвертированные изображения?

Все изображения WebP хранятся в каталоге /wp-content/uploads-webpc/. Внутри каталога есть та же структура, что и в исходном каталоге /wp-content. Файлы имеют оригинальные расширения в названии вместе с новым .webp .

Если исходный файл выглядит следующим образом: /wp-content/uploads/2019/06/example.jpg, его преобразованная версия будет находиться в следующем месте: /wp-content/uploads-webpc/uploads/2019/06/example.jpg.webp.

В случае, если местоположение исходного файла выглядит следующим образом: /wp-content/themes/my-theme/public/img/example.jpg, тогда его преобразованная версия будет находиться в следующем месте: /wp-content/uploads-webpc/themes/my-theme/public/img/example.jpg.webp.

Исходные изображения не изменены. Если вы удалите плагин, будут удалены только файлы WebP. Ваши изображения никак не изменяться.

Как изменить путь к загрузке?

Это возможно при использовании следующих типов фильтров для изменения путей по умолчанию. Это решение для продвинутых пользователей. Если нет, пропустите этот вопрос.

Путь к корневому каталогу установки WordPress (по умолчаниюABSPATH):

add_filter('webpc_uploads_root', function($path) {
  return ABSPATH;
});

Путь к /uploadsкаталогу(относительно корневого каталога):

add_filter('webpc_uploads_path', function($path) {
  return 'wp-content/uploads';
});

Путь к каталогу с преобразованными файлами WebP (относительно корневого каталога):

add_filter('webpc_uploads_webp', function($path) {
  return 'wp-content/uploads-webpc';
});

Обратите внимание, что каталог /uploads-webpc должен находиться на том же уровне вложенности, что и /uploads , /plugins и /themes каталоги.

Префикс в URL-адресе /wp-content/ каталога или эквивалентного (используется в .htaccess):

add_filter('webpc_uploads_prefix', function($prefix) {
  return '/';
});

Для следующего примера пользовательской структуры WordPress:

...
├── web
    ...
    ├── app
    │   ├── mu-plugins
    │   ├── plugins
    │   ├── themes
    │   └── uploads
    ├── wp-config.php
    ...

Используйте следующие фильтры:

add_filter('webpc_uploads_root', function($path) {
  return 'C:/WAMP/www/project/webp'; // your valid path
});
add_filter('webpc_uploads_path', function($path) {
  return 'app/uploads';
});
add_filter('webpc_uploads_webp', function($path) {
  return 'app/uploads-webpc';
});
add_filter('webpc_uploads_prefix', function($prefix) {
  return '/';
});

После настройки фильтров перейдите в Настройки -> WebP Converter в панели администратора и нажмите кнопку Сохранить изменения . Файлы .htaccess с соответствующими правилами следует создавать в каталогах /uploads и /uploads-webpc .

Как запустить конвертацию вручную?

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

Помните, что наш плагин учитывает изображения, сгенерированные WordPress. Существует множество плагинов, которые генерируют, например, изображения другого размера или другой версии.

Если вы хотите интегрироваться со своим плагином, который генерирует изображения самостоятельно, вы можете сделать это. Наш плагин предоставляет возможность такой тип интеграции. Это работает для всех изображений в каталоге /wp-content.

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

Вы можете автоматически запустить опцию, чтобы восстановить все новые изображения. Это полезно, когда вы используете внешние плагины, которые сами генерируют изображения. Для этого используйте следующий код:

do_action('webpc_regenerate_all', $paths);

Ниже приведен пример того, как использовать это действие для автоматической регенерации изображений после изменения темы:

add_action('init', function()
{
  do_action('webpc_regenerate_all');
});

Чтобы вручную начать преобразование выбранных файлов, вы можете использовать действие, которому вы передадите массив со списком путей (они должны быть абсолютными путями к серверу):

do_action('webpc_convert_paths', $paths);

Альтернативный метод — начать преобразование выбранного вложения вручную, передав идентификатор сообщения из библиотеки мультимедиа. Не забудьте запустить это действие после регистрации всех размеров изображения (т.е. после запуска функции add_image_size ) :

do_action('webpc_convert_attachment', $postId);

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

add_filter('webpc_attachment_paths', function($paths, $attachmentId) {
  return $paths;
}, 10, 2);

Аргумент $paths — это массив абсолютных серверных путей, а $attachmentId — это идентификатор сообщения вложения, добавленного в библиотеку мультимедиа.

Чтобы удалить файлы, конвертированные вручную, используйте следующее действие, предоставив в качестве аргумента массив абсолютных серверных путей к файлам (это приведет к удалению файлов, конвертированных вручную) :

do_action('webpc_delete_paths', $paths);

Как изменить правила .htaccess?

Редактирование правил в файле .htaccess вручную — задача только для опытных разработчиков. Помните, что неправильные правила могут привести к тому, что ваш сайт перестанет работать.

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

Возвращение пустой строки удалит эти правила при следующем сохранении настроек плагина. Вы должны сделать это после каждого редактирования фильтра.

Правила для перенаправлений: (возвращает правила для модуляmod_rewrite):

add_filter('webpc_htaccess_mod_rewrite', function($rules, $path) {
  return '';
}, 10, 2);

Аргумент $path — это абсолютный путь к серверу для файла .htaccess (/wp-content/.htaccess или /wp-content/uploads/.htaccess).

Правила для image/webp MIME-типа: (возвращает правила для модуляmod_mime):

add_filter('webpc_htaccess_mod_mime', function($rules) {
  return '';
});

Правила для кэширования в браузере: (возвращает правила для модуля mod_expires):

add_filter('webpc_htaccess_mod_expires', function($rules) {
  return '';
});

Все правила из файлов /wp-content/.htaccess , /wp-content/uploads/.htaccess и /wp-content/uploads-webpc/. htaccess: (возвращает правила для модулей: mod_rewrite , mod_mime и mod_expires ) :

add_filter('webpc_htaccess_rules', function($rules, $path) {
  return '';
}, 10, 2);

Аргумент $path — это абсолютный путь к серверу для файла .htaccess.

Что такое кеширование в браузере?

Этот параметр позволяет ускорить загрузку страниц для возвращающихся пользователей, поскольку им не нужно повторно загружать файлы с сервера. Плагин позволяет это с помощью модуля mod_expires.

Он включен по умолчанию. Если вы не хотите использовать эту функцию, вы можете отключить ее в любое время.

Плагин поддерживает CDN?

К сожалению нет. Это связано с логикой работы плагина. Плагины, которые обеспечивают интеграцию с серверами CDN, изменяют HTML-код веб-сайта, изменяя URL-адреса для медиа-файлов. Этот плагин не изменяет URL. Замена URL-адресов в HTML-коде не является оптимальным решением.

Основной проблемой при смене URL является кеш. Когда мы изменяем URL-адрес изображения для браузера, поддерживающего WebP, а затем используем браузер без поддержки WebP, он по-прежнему будет иметь URL-адрес изображения в формате .webp, поскольку он будет находиться в кэше.

Хотя в случае тега img вы можете решить эту проблему, в случае background-image это возможно. Мы стремились получить полную совместимость, чтобы поддерживать все изображения, независимо от того, как они отображаются на веб-сайте.

Поэтому в этом плагине для браузеров, поддерживающих формат WebP, только источник файла заменяется с помощью модуля mod_rewrite на сервере. URL для изображения остается прежним. Это решает проблему полностью, но это невозможно сделать, когда файлы хранятся на сервере CDN.

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

Конфигурация для Nginx

Пожалуйста, отредактируйте файл конфигурации:

/etc/nginx/mime.types

и добавьте этот код:

types {
  # ...

  image/webp webp;
}

Затем найдите файл конфигурации по пути (по умолчанию это файл по умолчанию):

/etc/nginx/sites-available/

и добавьте код ниже в этом файле:

server {
  # ...

  location ~ /wp-content/(?<path>.+)\.(?<ext>jpe?g|png|gif)$ {
    if ($http_accept !~* "image/webp") {
      break;
    }
    add_header Vary Accept;
    expires 365d;
    try_files /wp-content/uploads-webpc/$path.$ext.webp $uri =404;
  }
}

Конфигурация для мультисайтовой сети

Да, с одним исключением. В этом режиме невозможно автоматически сгенерировать содержимое файлов .htaccess.

Вставьте следующий код в начале файла .htaccess в каталог /wp-content:

# BEGIN WebP Converter
# ! --- DO NOT EDIT PREVIOUS LINE --- !
<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteCond %{HTTP_ACCEPT} image/webp
  RewriteCond %{DOCUMENT_ROOT}/wp-content/uploads-webpc/$1.jpg.webp -f
  RewriteRule (.+)\.jpg$ /wp-content/uploads-webpc/$1.jpg.webp [NC,T=image/webp,E=cache-control:private,L]
  RewriteCond %{HTTP_ACCEPT} image/webp
  RewriteCond %{DOCUMENT_ROOT}/wp-content/uploads-webpc/$1.jpeg.webp -f
  RewriteRule (.+)\.jpeg$ /wp-content/uploads-webpc/$1.jpeg.webp [NC,T=image/webp,E=cache-control:private,Lp]
  RewriteCond %{HTTP_ACCEPT} image/webp
  RewriteCond %{DOCUMENT_ROOT}/wp-content/uploads-webpc/$1.png.webp -f
  RewriteRule (.+)\.png$ /wp-content/uploads-webpc/$1.png.webp [NC,T=image/webp,E=cache-control:private,L]
</IfModule>
# ! --- DO NOT EDIT NEXT LINE --- !
# END WebP Converter

И следующий код в начале файла .htaccess в каталоге /wp-content/uploads-webpc :

# BEGIN WebP Converter
# ! --- DO NOT EDIT PREVIOUS LINE --- !
<IfModule mod_mime.c>
  AddType image/webp .webp
</IfModule>
<IfModule mod_expires.c>
  ExpiresActive On
  ExpiresByType image/webp "access plus 1 year"
</IfModule>
# ! --- DO NOT EDIT NEXT LINE --- !
# END WebP Converter

Является ли плагин полностью бесплатным?

Да. Плагин полностью бесплатный.

Работа над плагином и технической поддержкой требует много часов работы. Если вы хотите её оценить , вы можете предложить нам кофе . Спасибо всем!

Спасибо за все оценки и отзывы.

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

Это все очень важно для нас и позволяет нам делать еще лучше для вас!

Отзывы

04.08.2020
Have experimented with WebP few times over the years, but decided to wait till Apple got on board before I fully committed, as I was concerned that there would be some lag if images were converted on the fly. Doesn't seem to be anything to worry about with this plugin - should have jumped on it sooner in hindsight! Definitely a plugin for the must-use list.
29.07.2020
My sites are on nginx and have a custom directory structure. Nginx instructions are right there in the faq and when I had issues due to my directory structure, the plugin creator helped me have it working the same day. Plugin works great and does exactly what it is supposed to. Thanks!
I have a few findings. Cannot find error images stated in my media library or web page. Found some images lost in the web page after few days left some title there. The image with two IDs maybe not due to the plugin.
Посмотреть все 111 отзывов

Участники и разработчики

«WebP Converter для СМИ» — проект с открытым исходным кодом. В развитие плагина внесли свой вклад следующие участники:

Участники

«WebP Converter для СМИ» переведён на 7 языков. Благодарим переводчиков за их работу.

Перевести «WebP Converter для СМИ» на ваш язык.

Заинтересованы в разработке?

Посмотрите код, проверьте SVN репозиторий, или подпишитесь на журнал разработки по RSS.

Журнал изменений

1.3.1 (2020-07-03)

  • [Fixed] Text Domain for Internationalization

1.3.0 (2020-06-12)

  • [Удалено] Возможность пропустить конвертацию существующих изображений при Восстановить Все
  • [Исправлено]Создание каталога webpc/uploads-webpc после повторной активации плагина
  • [Исправлено] Сообщение об ошибке не поддерживает старую версию PHP
  • [Исправлено] Игнорирование чувствительности к регистру при проверке расширений изображения
  • [Изменено] Сообщения об ошибках при преобразовании изображений
  • [Изменено] Новый аргумент для фильтра webpc_htaccess_mod_rewrite и поддержка нескольких файлов .htaccess
  • [Добавлено] Преобразование всех изображений из каталога /uploads (также отличного от библиотеки мультимедиа) .
  • [Добавлено] Преобразование изображений из каталога /plugins
  • [Добавлено] Преобразование изображений из каталога /themes
  • [Добавлено] Информация об используемых фильтрах на вкладке Конфигурация сервера
  • [Добавлено] Опция принудительного повторного преобразования всех изображений при Восстановить Всё

1.2.7 (2020-06-11)

  • [Изменено] Перемещение преобразованных файлов WebP в каталог /uploads-webpc/uploads из каталога /uploads-webpc (требуется ручное изменение конфигурации для Nginx и WordPress Multisite )
  • [Изменено] Проверка при преобразовании изображений

1.2.6 (2020-05-28)

  • [Исправлено] Удаление файлов WebP больше исходного при загрузке

1.2.5 (2020-05-10)

  • [Удалено] Ссылка на настройки плагина на экране сетевого администратора для WordPress Multisite
  • [Исправлено] Путь в RewriteRule для WordPress Multisite
  • [Изменено] Сообщения об ошибках в панели администрирования
  • [Добавлено] Поддержка настройки disable_functions для использования функции set_time_limit
  • [Добавлено] Поддержка заблокированной функции file_get_contents

1.2.4 (2020-04-24)

  • [Изменено] Сообщения об ошибках в панели администрирования
  • [Добавлено] Действие webpc_delete_paths для удаления изображений по путям

1.2.3 (2020-04-15)

  • [Добавлено] Блокировка кэша сервера для правил перезаписи
  • [Добавлено] Определение того, обрабатываются ли запросы к изображениям сервером в обход Apache

1.2.2 (2020-04-08)

  • [Изменено] Правила перемещения для модулей mod_mime и mod_expires в файл /uploads-webpc/.htaccess
  • [Изменено] Новый аргумент для фильтра webpc_htaccess_rules с указанием пути к файлу на сервере

1.2.1 (2020-04-07)

  • [Удалено]Фильтрwebpc_option_disabled
  • [Исправлено] Преобразование изображений несколько раз при загрузке в медиатеку
  • [Добавлено] Действие webpc_convert_paths для пути преобразования изображений
  • [Добавлено] Действие webpc_convert_attachment для преобразования изображений по идентификатору записи

1.2.0 (2020-04-05)

  • [Изменено]Перемещение правил из файла .htaccess в корневом каталоге WordPress в каталог/wp-content/uploads
  • [Добавлено] Возможность отключить автоматическое удаление файлов WebP больше оригинала
  • [Добавлено] Проверка ошибок для файла без записи .htaccess
  • [Добавлено] Фильтр webpc_uploads_root для изменения пути к корневому каталогу установки WordPress

1.1.2 (2020-03-03)

  • [Добавлено] Нулевое заполнение в конце для файлов WebP нечетного размера с использованием библиотеки GD

1.1.1 (2020-02-13)

  • [Изменено] Неизвестная обработка ошибок при конвертации изображений
  • [Добавлено] Возможность пропустить преобразование существующих изображений при Восстановить Все
  • Кнопка [Добавлено] для простой проверки конфигурации сервера

1.1.0 (2020-02-10)

  • [Исправлено] Поддержка установки WordPress в подкаталоге
  • [Исправлено] Ошибка при обнаружении поддержки WebP от Imagick

1.0.9 (2020-01-03)

  • [Добавлено] Предел максимального разрешения изображения при использовании библиотеки GD

1.0.8 (2019-12-19)

  • [Исправлено] Удаление файла для пользовательских путей с преобразованными файлами WebP
  • [Изменено] Управление правилами в файле .htaccess при активации или деактивации плагина
  • [Добавлено] Система обнаружения ошибок в конфигурации сервера
  • [Добавлено] Блокирование преобразования изображений, когда библиотеки GD или Imagick недоступны

1.0.7 (2019-12-17)

  • [Изменено] Переписать правила в файле .htaccess
  • [Добавлено] Поддержка пользовательских путей для исходных файлов загрузки
  • [Добавлено] Поддержка пользовательских путей для сохранения преобразованных файлов WebP
  • [Добавлено] Фильтр webpc_uploads_path для изменения пути к исходным загружаемым файлам
  • [Добавлено] Фильтр webpc_uploads_webp, чтобы изменить путь для сохранения преобразованных файлов WebP

1.0.6 (2019-11-06)

  • [Изменено] Способ создания пути к файлу (без ABSPATH)
  • [Добавлено] Автоматическое удаление преобразованных файлов больше оригинала

1.0.5 (2019-09-16)

  • [Добавлено] Информация о доступных FAQ

1.0.4 (2019-07-11)

  • [Изменено] Ограничения максимального времени выполнения

1.0.3 (2019-06-26)

  • [Добавлено] Дополнительные правила безопасности

1.0.2 (2019-06-25)

  • [Изменено] Сообщения об ошибках
  • Вкладка [Добавлено] на странице настроек о конфигурации сервера

1.0.1 (2019-06-23)

  • [Изменено] Защита доступа к REST API
  • [Добавлено] Обработчик ошибок для неопределенного расширения GD

1.0.0 (2019-06-16)

  • Первый стабильный релиз