Параметры могут использоваться для изменения поведения стиля. Например, вы можете сделать несколько стилей с одинаковым содержимым, но отличающимися в параметрах. Параметры задаются списком названий и значений или визуальной формой.
Работа с параметрами
Настройка параметров выполняется во вкладке «Параметры» вашего стиля. Обычно, перед вами будет таблица, в левом столбце которой указывается название параметра, в правом — его значение. Если вы делаете стиль на заказ, рекомендуется оформить этот раздел в виде красивой формы. Об этом рассказано ниже.
Вы можете использовать параметры напрямую в коде вашего шаблона. Для вставки значения параметра в шаблон используется код:
{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— булевое значение, оптимально дляcheckboxlink— код, который может состоять из маленьких букв, цифр, дефиса и точкиints— строка целочисленных значений через запятую, для поляmselectcodes— строка кодов через запятую, для поляmselect
Пример описания параметров:
{
"skin": {
"type": "text",
"val": "text",
"name": "Site footer title",
},
"navbar": {
"type": "select",
"val": "link",
"name": "Navigation",
"options": {
"default": "Default",
"inverse": "Inverse"
}
}
}
Вы можете ознакомиться с примером реализации внутри стиля Bootstrap-3.