Корзина пуста
Войти О магазине FAQ Авторы Хостинг Сообщество
Автоматизированное сжатие скриптов и стилей сайта.
Загрузите дополнение из админки вашего сайта. Как?

Внимание, этот компонент требует версию PHP не ниже 5.3!
Если ваш сайт использует PHP ниже требуемого, установка этого дополнения может его сломать.

Компонент для склейки и сжатия скриптов и стилей. Хорошо ускоряет загрузку страниц сайта.

Для работы используется библиотека Munee.

Пример вызова:
[[MinifyX?
	&minifyCss=`1`
	&minifyJs=`1`
	&registerJs=`default`
	&registerCss=`default`
	&jsSources=`
		/inc/js/bootstrap.min.js,
		/inc/js/jquery.form.js,
		/inc/js/scripts.js,
	`
	&cssSources=`
		/inc/css/bootstrap.css,
		/inc/css/bootstrap-responsive.css,
		/inc/css/font-awesome.css,
		/inc/css/custom-fonts.css,
		/inc/css/style.css
	`
]]
Changelog for MinifyX

1.4.4-pl (16.05.2016)
==============
- [#22] Updated sabberworm/php-css-parser to version 7.0.3.

1.4.3-pl (28.04.2016)
==============
- [#21] Updated sabberworm/php-css-parser to version 7.0.2.

1.4.2-pl (22.08.2015)
==============
- Updated Munee with all subpackages.
- Fixed fatal error on PHP 5.3.3.

1.4.1-pl (01.06.2015)
==============
- Updated Munee with all subpackages.
- [#18] Improved work of plugin.

1.3.1-pl (21.07.2014)
==============
- [#12] Support of MODX 2.3
- [#11] Improved set of "munee_cache" variable on Windows.

1.3.0-pl1 (12.05.2014)
==============
- [#8] Fixed determining of cache dir for advanced site configuration.
- [#7] Fixed clearing cache.
- [#2] Added cut of comments in raw styles and scripts.
- [#9] Changed lessphp to https://github.com/oyejorge/less.php.
- Updated scssphp to version 0.0.10.

1.3.0-beta (26.12.2013)
==============
- Refactored main class.
- Rewrited snippet MinifyX.
- Added plugin MinifyX that can process scripts, styles and images of web page.
- Improved connector in assets for image processing.
- Changed cached files format.

1.2.2-pl3 (16.12.2013)
==============
- Removed phar file.
- Fixed url of cache dir in subfolder installations.
- Ability of commenting files by prefixing them by the dash.

1.2.1-pl (03.12.2013)
==============
- [#1] Replaced constant DIRECTORY_SEPARATOR to '/'.

1.2.0-pl (23.11.2013)
==============
- Fixed clean of parameter &cacheFolder

1.2.0-rc (20.11.2013)
==============
- Updated leafo/lessphp to v0.4.0
- Updated leafo/scssphp to v0.0.8
- Improved error logging

1.2.0-beta (12.11.2013)
==============
- Integrated Munee library from http://mun.ee
- Auto creation of cache dir.
- More options to register files on frontend.

1.1.3 (07.01.2013)
==============
- absolute path in the URL attribute of all compressed files.

1.1.2 (11.09.2012)
==============
- Improved caching of minified files.

1.1.1 (10.09.2012)
==============
- Removed E_WARNING on line 94 of minifyx.class.php

1.1.0 (09.09.2012)
==============
- Changed css minifier to Minify_CSS_Compressor from https://code.google.com/p/minify/
- Added Douglas Crockford's JSMin https://github.com/rgrove/jsmin-php/
- Serious refactor of code
- Added properties to snippet
- Removed plugin
- Improved caching of files
- Added parameters jsFilename && cssFilename


1.0.0
==============
- Initial Version
  1. Левин Павел 15 октября 2013, 18:54 #
    Отличная штука, я вот не знаю, а там есть параметр сжатия в .gzip?
    1. Василий Наумкин 15 октября 2013, 19:00 #
      Неа.

      Этот параметр есть в настройках веб-сервера nginx.
    2. shvind 23 ноября 2013, 21:55 #
      Отличная штука, особенно радует поддержка less и sass.

      Два шаблона — два контекста, второму отдаёт то же, что и первому. Плейсхолдеры менял, не помогает. Единственный вариант одному &minifyCss=`1`, второму &minifyCss=`0`, тогда ок.
      1. Leon 27 ноября 2013, 23:35 #
        как удалить свой коммент?
        модуль коментов есть кстати? что за счетчик(
        1. Дмитрий Зарубин 11 декабря 2013, 23:37 #
          Я бы ещё сделал его плагином, который после очистки кеша сохраняет цсс и джс.
          1. Василий Наумкин 11 декабря 2013, 23:40 #
            А сейчас что, не сохраняет?
            1. Дмитрий Зарубин 12 декабря 2013, 15:49 #
              Оно то всё сохраняет. Но это получается сниппет, который вызывается в шаблоне и слегка увеличивает время обработки страницы, когда она не кеширована (оно конечно минимально, но просто я перфекционист).
              Я бы сделал так:
              1. В параметрах шаблона указываешь какие цсс и дсж собирать в одну.
              2. Плагин первый, который после обновления кеша сохраняет все нужные наборы.
              3. Плагин второй, который подключает нужные цсс и джс к странице.
              Хотя скорее всего сильно мы не увеличим за счёт этого время отработки страницы на сервере. Вообщем это как идея.
              1. Василий Наумкин 12 декабря 2013, 16:36 #
                А плагины, по твоему, времени не затрачивают?

                Сниппет можно вызывать кэшированным, и тогда он будет отрабатывать один раз, после очистки кэша. А плагин будет работать всегда.
          2. Сергей Шлоков 24 мая 2014, 13:46 #
            Интересную фишку заметил: если стоит 2 пробела между тегами в css, то минифай их склеивает.
            Например, 2 пробела перед h3:
            .main  h3 {font-size:14px}
            превращается в
            .mainh3 {font-size:14px}
            Не знаю, фича это или глюк. Может кому-то жизнь спасет :)
            1. Виталий Сергеенко 26 мая 2014, 15:41 #
              А можно вызывать этот снипет несколько раз? Например в основном шаблоне и в теле документа что бы, например подключить скрипт только к одной странице?
              1. Василий Наумкин 26 мая 2014, 19:42 #
                Почему нет?
              2. Левин Павел 17 июня 2014, 23:51 #
                Библиотеку Munee требуется подключать на стороне хостинга?
                1. Василий Наумкин 18 июня 2014, 04:37 #
                  Нет, она идёт в комплекте. Нужна только версия PHP 5.3+
                2. Stan Ezersky 29 мая 2015, 11:41 #
                  Василий, а утилита может работать с вешними css- и js-файлами?
                  К примеру, //maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css или ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js
                  1. Василий Наумкин 29 мая 2015, 11:42 #
                    Нет, не может. Нужно скопировать на сайт, чтобы использовать локально.
                  2. Максим 05 июня 2015, 12:50 #
                    Хорошее, полезное и нужное приложение. Возникает вопрос: как разрешаются ситуации, когда платное приложение (fullCalendar), продающееся на modstore, не работает по причине бага в бесплатном MinifyX (речь о Munee и «мертвой» библиотеке, на которую она опирается — oyejorge/less.php). Что, в данном случае, делать клиенту, который заплатил за приложение, но теперь может полнофункционально использовать либо MinifyX либо fullCalendar? И что, как вы считаете, должны сделать авторы? Вообще, каков регламент, разрешения подобных конфликтов?
                    1. Василий Наумкин 05 июня 2015, 13:18 #
                      У «мёртвой» библиотеки последний коммит был 9 дней назад. Она гораздо живее, чем github.com/leafo/lessphp, у которой последний коммит был в 2014 году.

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

                      Все бесплатные дополнения поставляются «как есть» и никто ничего не гарантирует. Если их работа вас не устраивает — не используйте.
                      1. Алексей 06 июня 2015, 14:22 #
                        Я заметил глюк у MinifyX если указать в css:
                        @media(min-width:992px){
                        }
                        То страница с первого раза не сгенерируется. А если всеволишь добавить пробел, то всё будет ок:
                        @media (min-width:992px){
                        }
                        Может вам поможет
                      2. Владимир 07 июня 2015, 20:16 #
                        После обновления на 1.4.1, стали отваливаться css в объединенном файле, после поиска обнаружил, что проблема в конструкции width: {220px \0}, насколько я понял, это хак для ie, до обновления все работало нормально — помогла замена \0 на \9 — но это исключает из хака ie10
                        1. pavel 29 июля 2015, 17:58 #
                          у меня не работает =)

                          1. нет минифакации — что включаю, что нет — разницы нету, но имя файла содержит min
                          2 мой less файл выводит так же как он есть, со всеми уровнями вложенности и не конвертирует его в css

                          версия 1.4.1-pl — modx revo
                          1. Georgio 06 августа 2015, 19:51 #
                            Такая же беда не работает:
                            [Thu Aug 06 18:46:01 2015] [error] [client 109.188.127.15] #3 /var/www/****/data/www/*****.ru/core/components/minifyx/munee/vendor/sabberworm/php-css-parser/lib/Sabberworm/CSS/Parser.php(69): Sabberworm\\CSS\\Parser->parseDocumen in /var/www/****/data/www/*****.ru/core/components/minifyx/munee/vendor/sabberworm/php-css-parser/lib/Sabberworm/CSS/Parser.php on line 101, referer: http://****.ru/manager/?a=element/snippet/update&id=151

                            версия 1.4.1-pl — MODX Revolution 2.3.5-pl (traditional)
                            1. Victor 01 октября 2015, 22:55 #
                              а у меня фаталити какое-то
                              Fatal error: Uncaught exception 'Exception' with message 'Unopened {' in /home/virtwww/*sitename*/http/core/components/minifyx/munee/vendor/sabberworm/php-css-parser/lib/Sabberworm/CSS/Parser.php:85 Stack trace: #0 /home/virtwww/*sitename*/http/core/components/minifyx/munee/vendor/sabberworm/php-css-parser/lib/Sabberworm/CSS/Parser.php(75): Sabberworm\CSS\Parser->parseList(Object(Sabberworm\CSS\CSSList\Document), true) #1 /home/virtwww/*sitename*/http/core/components/minifyx/munee/vendor/sabberworm/php-css-parser/lib/Sabberworm/CSS/Parser.php(69): Sabberworm\CSS\Parser->parseDocument(Object(Sabberworm\CSS\CSSList\Document)) #2 /home/virtwww/*sitename*/http/core/components/minifyx/munee/src/Munee/Asset/Type/Css.php(174): Sabberworm\CSS\Parser->parse() #3 /home/virtwww/*sitename*/http/core/components/minifyx/munee/src/Munee/Asset/Type/Css.php(116): Munee\Asset\Type\Css->fixRelativePaths('/*!\n * Bootstra...', '/home/virtwww/w...') #4 /home/virtwww/*sitename*/http/c in /home/virtwww/*sitename*/http/core/components/minifyx/munee/vendor/sabberworm/php-css-parser/lib/Sabberworm/CSS/Parser.php on line 85

                              1.4.2-pl
                              MODX Revolution 2.4.0-pl
                              1. Victor 01 октября 2015, 23:33 #
                                оказывается была одна лишняя закрывающая скобка в bootstrap.css :)
                            2. devDevel 09 октября 2015, 20:42 #
                              Modx ошибки не регистрирует, но при минификации js что-то перестаёт работать, пример Lightbox.js

                              С CSS проблем нет, всё отлично, но с js — беда какая-то (пути верные).

                              Может PHP 5.4 виноват?
                              1. Василий Наумкин 10 октября 2015, 02:33 #
                                Нет, обычно виноваты сами минифицируемые скрипты. Они склеиваются друг с другом, из них вырезаются символы табуляции и пробелов, так что если где-то небрежно написан код и не хватает, например, точки с запятой после объявлении переменной — могут быть ошибки.
                                Еще при объединении могут получаться логические ошибки, типа перезаписи переменной одним из скриптов по ходу ниже.

                                Поэтому результаты работы минификации всегда нужно проверять, тут ничего не поделаешь. Возможно, стоит обновить скрипт Lighbox или исключить его из сжатия.
                                1. devDevel 10 октября 2015, 11:12 #
                                  Спасибо. Перекопал всё, нашёл ошибку
                                  1. devDevel 10 октября 2015, 12:01 #
                                    Хм, я в замешательстве: Всё прекрасно в FF, но в Хроме и Осле js тупо не подключается в подвале.
                                2. Алексей Бгатов 28 октября 2015, 13:07 #
                                  невероятно удобно
                                  одно но: шрифты не подтягивает из @font-face :(
                                  url(../assets/tpl/fonts/opensans.ttf)
                                  
                                  например, минифицированный css пытается тянуть по адресу
                                  http://assets/tpl/fonts/opensans.ttf
                                  
                                  что можно сделать? отказываться из-за этого не хочется
                                  1. Kirusha 18 июля 2016, 23:54 #
                                    Наверное подключать шрифты отдельно. Хотя проблема актуальна не только для шрифтов, так же любой url('../path/to/img.jpg'); может отказать, неправильно вычисляя относительное расположение файла.
                                  2. zooks 30 августа 2016, 01:36 #
                                    Хорошее дополнение для склейки стилей, работа проверена. Еще можно использовать как хак: чтобы стиль обновлялся в кэше у клиента.
                                    1. Dmitriy 06 февраля 2017, 17:48 #
                                      2 часа бился над вопросом почему после MinifyX бьются стили. Выяснил, что он пожирает css-вычисления типа width:calc( 50% + 250 px ). Печаль, беда.
                                      Войдите на сайт, чтобы прокомментировать.
                                      График скачиваний дополнения за последние 30 дней. Серым фоном отмечены выходные.
                                      Hot!
                                      Название
                                      MinifyX
                                      Сайт дополнения
                                      Версия
                                      1.4.4-pl
                                      Дата выпуска
                                      16.05.2016
                                      Автор выпуска
                                      Василий Наумкин
                                      Цена
                                      Бесплатно
                                      Загрузок
                                      5 753
                                      Версия MODX
                                      от 2.2
                                      Теги
                                      Другие дополнения автора
                                      SMF, Ace, mxManager, MobileDetect, msProfile, Comparison, AjaxSnippet, Markdown, Sendex, debugParser, mspQiwi, AjaxForm, mspRobokassa, msDiscount, AdminPanel, TypoMCE, Office, mSearch2, mspZPayment, PageBreaker, eventsCalendar2, Uploadify, Jevix, Loginza, HybridAuth, Tickets, PhpHypher, DateAgo, Theme.Bootstrap, miniShop2, BannerY, yTranslit, pdoTools, ms2Gallery
                                      Поделиться