С помощью макросов вы можете заменять названия классов, используемые во всех шаблонах. Это позволит оставить существующие файлы шаблонов при натягивании нового стиля — структура шаблонов чаще всего совпадает, различаются только названия классов.
Суть макросов
Большая часть готовых шаблонов панели управления на базе Bootstrap использует одинаковую структуру. В них есть сетка, кнопки, формы, блоки контента и таблицы. Набор HTML-элементов практически не отличается от шаблона к шаблону. Но различаются названия классов.
Например, шаблон AdminLTE в качестве «стандартного» блока вёрстки страницы использует класс box. В классическом Bootstrap 3 для этих же целей примеряется класс panel. Основной контент блока имеет класс box-body и panel-body соответственно. Получается, чтобы заменить один шаблон на другой, нам нужно просто поменять во всех названиях классов box на panel. Или на card, если у нас более свежая версия Bootstrap.
Именно в этом состоит задача макросов. Большая часть названий классов в шаблонах AlterCPA указана именно макросами. Вы можете поменять название класса в настройках, после чего он автоматически вставится во все шаблоны, которых давно больше сотни. И вам не нужно будет менять их вручную. При обновлении системы, а значит и шаблонов, всё так же пройдёт автоматически.
Настройка макросов
Управление макросами выполняется из раздела «Макросы». В столбце «Название» раскрыта задача макроса. В столбце «Код» указано название, которое можно использовать для вставки в шаблон и другие макросы.
Значение макроса — это то содержимое, которое в итоге будет вставлено в шаблон. Внутри значения может присутствовать как конкретный набор символов, так и значение другого макроса. Чтобы вставить значение макроса xxx в другой макрос, используйте код {xxx}.
Вы также можете вставлять значение из раздела «Параметры». Для вставки параметра с названием xxx будет использоваться код {cfg:xxx}.
Дополнительные параметры из основной конфигурации внешнего вида:
{mcfg:box}— основной цвет кнопок и элементов: success, warning, danger, primary, info, default{mcfg:bg}— цвет окраски виджетов: light-blue, aqua, navy, teal, green, purple, yellow, orange, red, maroon, gray, black
Например, у нас есть макрос box для основного блока, который может содержать в себе блоки box-header, box-body и box-footer. Записываем эти макросы как {box}-header, {box}-body и {box}-footer соответственно. Теперь, если мы поменяем значение макроса box на panel, наши зависимые макросы преобразуются в panel-header, panel-body и panel-footer.
Вставка макросов в шаблон
Для вставки значения макроса с названием xxx в шаблон, используйте следующий код:
{tpl:xxx}
Вы также можете вставлять значение параметра стиля. Для вставки параметра с названием xxx в шаблон, используйте код:
{tpl:cfg-xxx}
Полезные макросы
При работе с шаблонами, вам будет удобно указывать пути к ресурсам с помощью макросов. Так эти пути будут актуальными при переносе стиля в другую папку.
{tpl:skin}— папка стиля, напримерmystyle.{tpl:skinpath}— путь к стилю, например/skin/mystyle, без слеша в конце.{tpl:skincss}— путь к CSS-файлам, например/skin/mystyle/css, без слеша в конце.{tpl:skinjs}— путь к JS-файлам, например/skin/mystyle/js, без слеша в конце.{tpl:skinimg}— путь к картинкам, например/skin/mystyle/img, без слеша в конце.
Рекомендуемая настройка для Bootstrap-3
Перед тем, как натянуть шаблон на базе Bootstrap-3, рекомендуется настроить макросы для максимального соответствия классическому Bootstrap:
bg—bg-{mcfg:box}bg-active—{bg}-active active-bgbox—panelbox-widget—{box-primary} widgetbox-header—{box}-headingalert—alert