Параметры могут использоваться для изменения поведения стиля. Например, вы можете сделать несколько стилей с одинаковым содержимым, но отличающимися в параметрах. Параметры задаются списком названий и значений или визуальной формой.
Работа с параметрами
Настройка параметров выполняется во вкладке "Параметры" вашего стиля. Обычно, перед вами будет таблица, в левом столбце которой указывается название параметра, в правом - его значение. Если вы делаете стиль на заказ, рекомендуется оформить этот раздел в виде красивой формы. Об этом рассказано ниже.
Вы можете использовать параметры напрямую в коде вашего шаблона. Для вставки значения параметра в шаблон используется код:
{tpl:cfg-xxx}
Вместо xxx
указывается название вашего параметра. Вы также можете использовать условные блоки:
<!-- IFTPL cfg-xxx --> ... <!-- ENDIF --> <!-- IFNTP cfg-xxx --> ... <!-- ENDIF -->
Вы можете вставлять значение параметров в разделе "Макросы". За вставку параметра xxx
внутри значения макроса отвечает код:
{cfg:xxx}
Вы также можете использовать эти параметры внутри раздела "Настройки" вашего стиля при указании CSS и JS файлов. Например, таким образом можно реализовать выбор конкретного файла стиля, который будет загружаться в шаблоне:
bootstrap-{cfg:skin}
Это пример из списка CSS-файлов шаблона Bootstrap. Рекомендуется изучить его как пример реализации всех возможностей стилей.
Файл настройки параметров
Вы можете заменить простую таблицу со списком ключ-значение на визуальную форму настройки параметров. Для этого вам необходимо добавить файл с названием param.json
, в котором будет описан список доступных параметров.
Содержимое файла представляет собой JSON-объект. Ключи этого объекта - названия параметров, значение - объект, который описывает эти параметры.
"param": { "type": "text|number|textarea|checkbox|select|mselect", "val": "text|int|float|decimal|bool|link|ints|codes", "name": "Param name", "descr": "Description", "options": { "key": "value", "foo": "bar" } }
Описание параметра содержит поля:
type
- тип контроллера: text, number, textarea, checkbox, select, mselectval
- функция, отвечающая за преобразование значения: text, int, float, decimal, bool, link, ints, codesname
- название параметра, которое выводится в формеdescr
- описание параметра, которое выводится в формеoptions
- набор пар ключ-значение, который используется для полей типа select и mselect.
Тип контроллера:
text
- обычное текстовое полеnumber
- тестовое поле для ввода числаtextarea
- многострочное текстовое полеcheckbox
- поле с галочкойselect
- выпадающий список с выбором одного значенияmselect
- список с множественным выбором
Преобразование значения:
text
- обычный текстint
- целое числоfloat
- чисто с плавающей точкойdecimal
- автоматический выбор между целым числом и числом с плавающей точкойbool
- булевое значение, оптимально дляcheckbox
link
- код, который может состоять из маленьких букв, цифр, дефиса и точкиints
- строка целочисленных значений через запятую, для поляmselect
codes
- строка кодов через запятую, для поляmselect
Пример описания параметров:
{ "skin": { "type": "text", "val": "text", "name": "Site footer title", }, "navbar": { "type": "select", "val": "link", "name": "Navigation", "options": { "default": "Default", "inverse": "Inverse" } } }
Вы можете ознакомиться с примером реализации внутри стиля Bootstrap-3.