====== Особенности интеграции дизайна для некоторых объектов. ====== Можно выделить два особых объекта: ===== Строка навигации (хлебные крошки) ===== Объект доступен на всех страницах сайта в переменной **$navigation**. Вставляется в шаблоны путем использования smarty функции [[:smarty:smarty6#object|object]]. {object obj=$navigation} Шаблон самой строки следует искать в /templates/[mysiteid]/others/navigation.tpl. Доступные в нем переменные: ==== $navigation ==== Массив записей содержит текущий путь в иерархии сайта. Каждая запись представляет собой массив с ключами: * **name** - название пункта. * **link** - ссылка, может быть пустой, тогда обычно пункт выводится простой строкой. ==== $auth ==== Объект авторизации, [[:integration:globaldata#$auth|см. глобальные переменные]]. ==== $system ==== Массив значений, отражающих текущее состояние системы, [[:integration:globaldata#$system|см. глобальные переменные]]. ==== Шаблон ==== {* Типичный пример шаблона navigation.tpl. *} {section name=i loop=$navigation} {* Обход массива записей. *} {if !$smarty.section.i.first} / {/if} {* Если элемент не первый, то вставляется разделитель. *} {if $navigation[i].link} {* Если есть ссылка. *} {$navigation[i].name} {else} {$navigation[i].name} {/if} {/section} Обычно строка навигации имеет вид: __Раздел__ / __Категория__ / __Подкатегория__ Если строка навигации пуста, то независимо от результата этого шаблона - {object obj=$navigation} вернет пустое значение. ===== Многостраничная навигация (нумератор страниц) ===== Объект доступен на некоторых типах страниц, где предусмотрен постраничный просмотр записей. Имя переменной может отличаться, его стоит смотреть в руководстве соответствующего [[:modules|модуля]], но обычно называется **$items_pager**. Вставляется в шаблоны путем использования smarty функции [[:smarty:smarty6#object|object]]. {object obj=$items_pager} Шаблон самой строки следует искать в /templates/[mysiteid]/others/pager.tpl. Доступные в нем переменные: ==== $prevlink ==== Ссылка на предыдущую страницу. Если пусто, то активная страница первая. ==== $nextlink ==== Ссылка на следующую страницу. Если пусто, то активная страница последняя. ==== $firstlink ==== Ссылка на первую страницу. Если пусто, то активная страница первая. ==== $lastlink ==== Ссылка на последнюю страницу. Если пусто, то активная страница последняя. ==== $links ==== Массив записей содержит список номеров страниц. Каждая запись представляет собой массив с ключами: * **name** - название пункта. * **link** - ссылка. * **selected** - логическое значение, если истина, то номер страницы активный в данный момент (выбранный). ==== $auth ==== Объект авторизации, [[:integration:globaldata#$auth|см. глобальные переменные]]. ==== $system ==== Массив значений, отражающих текущее состояние системы, [[:integration:globaldata#$system|см. глобальные переменные]]. ==== Шаблон ==== {* Типичный пример шаблона pager.tpl. *} {if $prevlink}« предыдущая {/if} {section name=i loop=$links} {* обход массива записей. *} {if $links[i].selected} {* Если номер выбран (активный). *} {$links[i].name} {else} {$links[i].name} {/if} {/section} {if $nextlink} следующая »{/if} Обычно нумератор имеет вид: « __предыдущая__ __1__ **2** __3__ ... __10__ __следующая__ »