Оптимизация (сжатие) изображений - Гугл PageSpeed одобряет
Теперь настоящий комбайн для работы с изображениями. Управление белыми полями, четкостью, размером, обрезкой картинок и т.д.
[size=150]
[b]Для Opencart 3.0 и Opencart 2.*, 1.5
С поддержкой WEBP, Lazy Load и др.
Дистрибутив теперь универсальный (он один) для движка 1.5, 2-й и 3-й версий.
Версия модуля 3.2.0
Ioncube Loader (версия 10+ обязательна) используйте 10-ю или 11-ю, или 12.0.4+. 12.0.2-я версия содержит баг (начиная с 12.0.4 нет проблем)
Демо 2.* (клиентская часть):
https://watermark.sitecreator.pro
Демо 2.* (админка):
Разница в размерах ДО и ПОСЛЕ:

[url=http://dl4.joxi.net/drive/2018/05/30/0011/3107/740387/87/edf9b78701.jpg]
Полностью совместимые ускорители в плане сжатых форматов, т.е. WEBP работает (выводится) корректно:
- Jet Cache
- Turbo (версия для opencart 2.1 и 2.3)
NitroPack (тестировался с NitroPack 2.5.3, про более свежие и будущие версии не берусь судить ). Больше не поддерживается, т.к. разработчик Нитро прекратил его продажу и поддержку.
- Boost (проверялось только на опенкарт 2.*, не могу судить о версии на которой тестировался, т.к. разработчик в модуле не указал версию. Возможно, что есть
несовместимые версии)
Ускоритель Лайтинг может работать совместно с Компрессором если включен режим совместимости с кеширующим ускорителем в модуле Компрессор, но гарантировать, что это будет работать везде и всегда на 100% невозможно, в подавляющем большинстве случаев это работает нормально.
Просьба обратить внимание до установки модуля на то, не изменен ли код напрямую (или за счет модификаторов) в файлах:
system/library/image.php, catalog/tool/image.php, admin/tool/image.php.
Не гарантируется выполнение всех функций модуля и нормальная работа если у вас в движке были сделаны прямые (или за счет модификаторов) изменения кода указанных выше файлов.
Желательно чтобы эти файлы были такими же как в дистрибутиве движка. В случае изменения кода указанных выше файлов может потребоваться дополнительная адаптация и/или модификация кода, это необходимо обсуждать отдельно, как правило, это платная работа. Модуль рассчитан для работы в первую очередь со стандартным движком. Автор не берет на себя никакую ответственность за работу на нестандартном движке.
Для работы с фоном исходных изображений (обрезка лишнего фона на исходниках) необходима дополнительная лицензия для работы соответствующего дополнительного плагина к модулю Компрессор.
Корректная работа модуля и совместимость гарантируются только в случае использования официальных дистрибутивов opencart, ocstore или "русская сборка". Решение вопросов совместимости и
адаптация в случае использования нестандартного/измененного кода движка опенкарт возможно на платной основе, это не входит в поддержку модуля.
Автор не может гарантировать совместимость модуля со всеми на свете другими модулями и/или шаблонами (для опенкарт), которые могли быть установлены до установки модуля "Image COMPRESSOR..." или могут быть установлены в будущем. Но автор прилагает все необходимые усилия, чтобы обеспечить максимальную совместимость с популярными и известными шаблонами и модулями. Кстати, ни один автор никогда не берет на себя ответственности по совместимости со всеми модулями других авторов.
В случае любых спорных вопросов автор готов продемонстрировать работу своего модуля на сервере заказчика на стандартном опенкарт (т.е. это опенкарт без изменения кода, без добавления чего-либо, что отсутствует в стандартном) из официального дистрибутива, для этого может быть использован тот же домен, для которого запрашивалась лицензия при покупке, или может быть использован тестовый домен (например, поддомен для домена, для которого покупалась лицензия)
Перенос лицензии (на др. домен) или отмена лицензии ("возврат покупки") после ее предоставления покупателю невозможны чисто технически.
С правовой точки зрения существует единственный официальный источник дистрибутивов опенкарт:[url=https://www.opencart.com/index.php?route=cms/download/history]https://www.opencart.com/index.php?route=cms/download/history
В случае любых спорных вопросов и решения их в правовом поле данный источник дистрибутивов рассматривается как единственный.
Де факто автор может заявлять совместимость и с разными сборками на основе опенкарт. Но с юридической точки зрения статус таких сборок никак не определен, а потому нет возможности определить их "официальность" и "правильность".
Различные сборки на основе опенкарт формально не могут являться официальными дистрибутивами. На данный момент, например, дистрибутивы ocstore не доступны для скачивания гражданам и организациям РФ и РБ, сайт и форум этой сборки недоступны из РФ, другими словами, предприняты шаги хозяевами указанной сборки для невозможности использования данной сборки в РФ, поэтому автор модуля не имеет возможности следить за изменениями в данной сборке. Фактически до версии ocstore 3.0.3.7 автор модуля обеспечивал совместимость всех своих модулей с данной сборкой.
Но WEbp может быть полезен если у вас много PNG изображений. Преобразование их в WEBP может в разы снизить общий вес изображений.Обычный хостинг должен соответствовать определенным условиям чтобы работал WebP. Проще всего режим WebP организовать на виртуальном хостинге если на нем только apache и есть хотя бы GD с поддержкой WebP, в этом случае не нужно менять код движка совсем. Если же на обычном хостинге nginx+apache, то тут несколько сложнее, т. к. нужно на некоторых хост-площадках вносить изменения в код движка.
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Часть хост-площадок с nginx+apache позволяет легко выводить WebP в бразуер. Покажу на примере http://ukraine.com.ua
Идете в "настройки сайта" и удаляете webp, png, jpg, jpeg jpg из списка статики.
-----------------------
RewriteEngine On
-----------------------
следующие строки:
-----------------------
# Check if browser support WebP images
RewriteCond %{HTTP_ACCEPT} image/webp
# Check if WebP replacement image exists
RewriteCond %{DOCUMENT_ROOT}/$1.webp -f
# Serve WebP image instead
RewriteRule (.+)\.(jpe?g|png)$ $1.webp [T=image/webp,E=accept:1]
<IfModule mod_headers.c>
Header append Vary Accept env=REDIRECT_accept
</IfModule>
AddType image/webp .webp
-----------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Если ваш хостер не предусмотрел настройку списка статических файлов для NGINX, то есть еще решение.Сделал сейчас универсальное решение (модификатор webp_by_sitecreator.ocmod.xml) для сайтов на виртуальном хостинге. Для отдачи WebP в браузер, поскольку важно не только сгенерировать WebP , но и показать его в браузере, при этом несовместимым и старым браузерам отдавать JPEG. Вот эту задачу и решает модификатор.
Пока сделал решение для самых нагруженных картинками страниц: КАТЕГОРИИ и ТОВАР.
Проверено на дефолтном шаблоне, а также проверено на (и массе других):
Достаточно наличия proc_open
Как видите, тесты сжатия проходят успешно при отсутствии у хостера EXEC.
Вскоре и proc_open не будет нужна. Т. е. работать будет на любой хост-площадке.
ниже результат с реальной хост-площадки. У хостера нет EXEC, да и не нужно...
версия 1.6.2
Добавлено управление группами изображений.
Для каждой группы можно задавать свои настройки.
Можно управлять белыми полями, прозрачным/ белым фоном, размерами.
Причем размеры можно задавать не жестко, а они будут рассчитаны
автоматически под конкретные условия.
Новая версия 1.6.3
Добавлены новые группы (по размерам) для изображений. Можно для каждой группы задавать свой уровень качества.
Нередко для маленьких изображений (например, 74х74) бывает избыточен
уровень качества 80, для таких мелких картинок лучше задать уровень 75
(или меньше), и тем самым уменьшить размер итогового файла.
А для очень больших изображений, например, баннеров, бывает, что
наоборот нужно поднять уровень качества немного выше чем уровень
качества картинок среднего размера.
Это дает больше гибкости для настройки качества итоговых изображений и
позволяет добиться хорошего соотношения веса всех файлов по отношению к
качеству.
Достаточно чтобы была доступна функция EXEC php для работы суперсжатия.
Watermark работает и без этой функции.
У вас будет и mozjpeg, и optiPNG на обычном хостинге. CGI-скрипты разрешает почти любой хостер.
Для этого бывает нужно заказать опцию CGI-скрипт или сменить тариф. У разных хостеров это по-разному.
Не успеваю обновлять инструкции. Особенно по установке дополнительного софта.На VDS это делается довольно просто и я максимально это расписал для разных ОС. Для обычного хостинга это несколько сложнее. Пока не готов для всех вариантов написать инструкции. Но готов помочь всем с установкой. Мне сейчас проще сделать чем писать инструкцию. Она будет, но со временем.
Редактор дурит: навставлял кучу левых символов, хотя и не показывал их.
У вас будет и mozjpeg, и optiPNG на обычном хостинге. CGI-скрипты разрешает почти любой хостер.
[color=#000000][size=100]Для этого бывает нужно заказать опцию CGI-скрипт или сменить тариф. У разных хостеров это по-разному.[color=#674ea7][size=150]
[color=#000000][size=100]Не успеваю обновлять инструкции. Особенно по установке дополнительного софта.[/size][/color][/size][/color][/size][/color] На VDS это делается довольно просто и я максимально это расписал для разных ОС. Для обычного хостинга это несколько сложнее. Пока не готов для всех вариантов написать инструкции. Но готов помочь всем с установкой. Мне сейчас проще сделать чем писать инструкцию. Она будет, но со временем.
[/size][/color]
Будет.
Могу сделать сайт для сравнения изображений в двух форматах: JPEG ("несжатый") и WebP ("сжатый").
WebP поддерживается в новых версиях модуля. Поддержка в том числе и на обычном хостинге.
Можете открыть сайт в браузере Chrome. Все изображения будут в формате WebP, и будут меньше в среднем чем в JPEG на 25%.
И можете открыть эту же страницу сайта в FireFox на обычном компьютере. Там те же самые картинки будут в JPEG загружаться.
Так можете сравнить размеры.
Разница видна на скриншоте: