Jump to content
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

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/

Edited by milkamil93
Рефакторинг темы
Link to comment
Share on other sites

  • 4 weeks later...

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

 

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

Link to comment
Share on other sites


  • 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 бугдет, конечно, полезна.  Но они ведь и ик уже минифицированы в движке и шаблонах.

 

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

 

 

Link to comment
Share on other sites

  • 9 months later...

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

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

 

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

Link to comment
Share on other sites


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

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

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

Link to comment
Share on other sites

  • 8 months later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.