Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Recommended Posts

Объединение, сжатие css, js файлов и форматирование html в одну строку.

Описание

Сделан на основе Simple Minify [2.3].Собирает все css и js файлы, объединяет их в один и удаляет лишние пробелы, переносы без ломания кода, а так же может сжать их gzip. Умеет форматировать html удаляя лишние пробелы, переносы, попутно сжимая js и css без ломания кода.

Настройка

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

Gzip

Для работы gzip сжатия нужно прописать в .htaccess следующий код

AddEncoding gzip .jgz
#add support gzip JavaScript
RewriteCond %{HTTP_USER_AGENT} ".*Safari.*" [OR]
RewriteCond %{HTTP:Accept-Encoding} gzip
RewriteCond %{REQUEST_FILENAME}.jgz -f
RewriteRule (.*)\.js$ $1\.js.jgz [L]
AddType "text/javascript" .js.jgz
#add support gzip CSS
RewriteCond %{HTTP_USER_AGENT} ".*Safari.*" [OR]
RewriteCond %{HTTP:Accept-Encoding} gzip
RewriteCond %{REQUEST_FILENAME}.jgz -f
RewriteRule (.*)\.js$ $1\.css.jgz [L]
AddType "text/css" .css.jgz
AddEncoding gzip .jgz

Внимание!!!

  • Модуль перезаписывает файл system/framework.php и он должен быть доступен для редактирования!
  • При изменении CSS и JS необходимо очистить кеш в настройках модуля, чтобы модуль заново сгенерировал файлы!

 

Самая свежая версия https://github.com/milkamil93/minify-oc/

Змінено користувачем milkamil93
Рефакторинг темы
Надіслати
Поділитися на інших сайтах

  • 4 weeks later...

Модуль ломает движок на open cart 2,3 osstore, шаблон faxtor, также установлен seo url. Не работает megamenu, табы, текст меняется в общем сайт становится не рабочим.

 

system/framework доступен для редактирования, как только в самом модулей отключаю сжатие js, сss все норм!

Надіслати
Поділитися на інших сайтах


  • 3 weeks later...
В 22.01.2018 в 16:57, milkamil93 сказал:

Собирает все css и js файлы, объединяет их в один

 

Это было актуально лет 10 назад.

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

Не имеет никакого значения сколько файлов будет: один или 10 для http2.

 

 

В 22.01.2018 в 16:57, milkamil93 сказал:

и удаляет лишние пробелы

 

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

думаю, не нужно объяснять, что после сжатия 10 пробелов (10 байт), грубо говоря превращаются, в 2 байта.

 

В 22.01.2018 в 16:57, milkamil93 сказал:

а так же может сжать их gzip

 

это и так делается на любой общей хост-площадке и любом сервере.

 

В 22.01.2018 в 16:57, milkamil93 сказал:

форматировать html удаляя лишние пробелы, переносы

 

абсолютно бессмысленно, учитывая, что html и так сжимается сервером.

К тому же это очень часто вредит нормальному исполнению кода.

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

 

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

 

Пишу об этом потому, что в свое время задавался вопросом возможности и эффективности решения данных задач.  Изучал решения от Гугл - серьезно и кропотливо изучал его решение для серверов pagespeed.  Но плюнул в конце концов,  даже в решениях от гугла больше вреда чем пользы.  Там столько глюков вылазит!

А вы решили переплюнуть гугл и изобрести велосипед?

 

В опенкарт реально есть только два самых важных момента:

1) скорость генерации страницы

2) вес изображений.  Можно использовать сжатие без потерь качества.

 

И то, и другое успешно решается.

 

Есть еще и 3-й момент, менее важный, но учитываемый гуглом - это JS, блокирующий отображение страницы в мобильном девайсе.

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

 

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

 

На всякий случай, по изображениям решение здесь:

 

 

Надіслати
Поділитися на інших сайтах

  • 9 months later...

модуль портит сайт - реально половина скриптов не работает, хтмл в один файл открывает тупо пустую страницу.

НО в тоже время нереально поднимается рейтинг в  GTmetrix засчет замены примерно 25 файлов css + js на 2 файла, более того загрузка страницы упала с 10с до 3с

 

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

Надіслати
Поділитися на інших сайтах


  • 1 month later...
В 18.12.2018 в 18:05, merchin сказал:

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

Решение есть, пишите в ЛС если актуально.

Надіслати
Поділитися на інших сайтах

  • 8 months later...

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.