/ / DLE-Asset — Автозагрузка стилей и скриптов в шаблон
август 11 2015

DLE-Asset — Автозагрузка стилей и скриптов в шаблон

DLE-Asset — Автозагрузка стилей и скриптов в шаблон

Подобный модуль я уже очень давно использую в проектах и теперь решил реализовать его и для DLE. Представьте ситуацию, когда вам нужно создать новый шаблон, с множеством различных скриптов, стилей к ним. Конечно подключить один раз вручную всё это не сложно, но как быть когда это нужно делать постоянно, к примеру вы пробуете использовать jquery-плагин мобильного меню, подключаете js и css, настраиваете, тестируете и понимаете, что этот плагин не подходит, удаляете и производите повторное подключение уже другого плагина, опять js и css. Опять тесты и вроде бы всё подходит, но через неделю понимаете, что этот плагин содержит баг под iOS, который устранить невозможно в разумные временные рамки. Прикручиваете 3й, 4й, 5й скрипты, дополняете каруселькой, кастомным скроллом, всё вручную... А после того, как всё готово на до бы произвести оптимизацию и включить сжатие и объединение css и js. И тут опять всё в ручную собрать, и через неделю наткнуться на необходимость удалить что-то или добавить, и опять вручную. Мне лично это надоедает после 2й попытки.

При использовании модуля, всё что нужно для подключения скриптов и стилей — прописать путь к папке или папкам, содержащим js и css-файлы, остальное DLE-Asset сделает сам, причём сначала подключатся все скрипты, а потом уже стили, а когда вы в админке отметите галочку сжатия js и css — сам соберёт нужные строки для передачи в класс минификации.

Назначение и особенности
Модуль предназначен для автоматического подключения файлов скриптов и стилей к шаблону сайта под управление CMS DataLife Engine.

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

При формировании html-кода учитываются настройки сжатия и объединения скриптов и стилей и модуль сам формирует корректный код в соответствии с настройками DLE.

Требования к установке
  • Версия DLE: 9.x и выше.
Установка
  • Скачать актуальную версию DLE-Asset
  • Распаковать содержимое папки upload в корень сайта.
  • Открыть {THEME}/main.tpl и в нужном месте, перед закрывающим тегом head вставить строкку подключения модуля:
    {include file="engine/modules/asset/add.php?folder=/templates/Default/css/"}
    {include file="engine/modules/asset/add.php?folder=/templates/Default/js/"}
    Или одной строкой:
    {include file="engine/modules/asset/add.php?folder=/templates/Default/css/,/templates/Default/js/&ignore=main"}
    Где
    folder — пути от корня сайта к папкам, содержащим css и js файлы. Если необходимо указать несколько путей, то они перечисляются через запятую. Вложенные папки не учитываются.
    ignore — префиксы имён файлов, которые будут исключены из обработки. По умолчанию используются два символов "-" и "_", если необходимо исключить ещё какие-то файлы, то достаточно прописать начало названий этих файлов через запятую. Такое поведение полезно, когда нужно гарантированно прописать подключение отдельных файлов в начале или в конце остальных (например основной файл со скриптами сайта как правило подключается после всех используемых библиотек).
  • Готово! Остаётся положить в указанные папки нужные скрипты и стили и они автоматически подключатся к шаблону, и объединятся в один файл при необходимости.

Комментарии

Captain

Captain

13 августа 2015 11:44 Клиенты
14
ПафНутиЙ, спасибо! Как всегда радуешь своими модулями/хаками. fellow
Реально напрягают лишние телодвижения при разработке, когда нужно пощупать/посмотреть разные скрипты в действии и потом остановиться на подходящем или удалить. Мне уже после первого подключения надоедает, но приходиться и дальше "скрипеть зубами". Облегчение работы налицо, давно хотел что-нибудь подобное.
fmnokia

fmnokia

14 августа 2015 22:16 Клиенты
2
Хорошее решение. Спасибо.
goomenny

goomenny

27 августа 2015 13:35 Клиенты
1
Полезная вещь! Спасибо автору. smile
Performans

Performans

6 декабря 2015 18:49 Клиенты
2
Спасибо, отличная вещь.
Подобную фишку использовал на ASP.NET MVC, Bundling and Minification. Но с минификацией следует быть поаккуратнее.

Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
Календарь
«    Март 2017    »
ПнВтСрЧтПтСбВс
 12345
6789101112
13141516171819
20212223242526
2728293031 
Опрос на сайте
Совершаете ли вы покупки в интернет?

Популярные новости
Архив новостей
Март 2017 (2)
Февраль 2017 (1)
Январь 2017 (1)
Декабрь 2016 (3)
Ноябрь 2016 (3)
Октябрь 2016 (2)