Как изменить степень сжатия изображений JPEG в WordPress

Время от времени клиенты интересуются, почему загружаемые ими изображения в высоком разрешении и отличном качестве на сайте выглядят, мягко говоря, не так, как в оригинале. Открою вам небольшой секрет: WordPress производит автоматическое сжатие изображений в формате JPEG до 90% от оригинала (а с версии 4.5 до 82% для повышения производительности сайта на мобильных устройствах). Это сделано для уменьшения размеров изображений, что позволит сэкономить некоторое количество времени на загрузке сайта.

Но что, если перед загрузкой изображений самостоятельно сжимаете их в своём любимом редакторе? Или же вы ведёте свой фотоблог и хотите выкладывать изображения только в высоком качестве? В этом случае вам совсем не хотелось бы, чтобы над файлами были произведены ещё какие-то дополнительные действия, кроме как загрузка на хостинг. Или же другая ситуация: вы наоборот хотите увеличить степень автоматического сжатия загружаемых файлов, чтобы ускорить отдачу контента. Оба этих случаях рассмотрены в данной заметке.

Так же сообщу, что всё это относится только к JPEG, другие форматы автоматически не сжимаются и загружаются в своём оригинальном качестве.

Как изменить степень сжатия изображений JPEG в WordPress

Как отключить сжатие JPEG

Если вам нужно загружать свои изображения как есть, то есть со 100% качеством, тогда необходимо вставить следующий код в файл functions.php, находящийся в директории вашей темы:

add_filter( 'jpeg_quality', create_function( '', 'return 100;' ) );

Отлично! Теперь ни один из вновь загружаемых файлов не будет подвержен каким-либо изменениям.

Как увеличить степень сжатия JPEG

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

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

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

add_filter( 'jpeg_quality', create_function( '', 'return 70;' ) );

Вместо 70 установите ту степень, которую посчитаете нужным. Обычно 80-85% являются наиболее оптимальным значениями, без особого ущерба для качества картинки.

Как быть с загруженными ранее файлами?

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

Успехов! :-)

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Добавить комментарий

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

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: