{$section_name}
{if $categories}
{section name=i loop=$categories}
- {$categories[i].name} - ({$categories[i].citems})
{/section}
{/if}
===== Cтраница категории ([раздел]_category.tpl) =====
Этот тип шаблона содержит данные о выбранной категории, о следующих двух уровнях категорий, а так же список товаров каталога, которые принадлежат выбранной категории.
==== $category ====
Массив с данными о текущей категории, состоит из ключей:
=== name ===
Название категории.
=== description ===
Описание категории.
=== idimg ===
Числовой идентификатор прикрепленного изображения.
=== citems ===
Количество материалов в категории.
=== level ===
Уровень в дереве категорий, 0 - находится в корне.
=== urlname ===
Строковой идентификатор категории.
==== $categories ====
Массив записей с данными о категориях двух уровней начиная с текущего. Формат данных аналогичен [[#categories|описанному выше]].
==== $items ====
Массив записей с данными о товарах каталога. Каждая запись представляет собой массив с ключами:
=== name ===
Название товара.
=== content ===
Главный текст-описание, форматированный, если включена опция визуального редактора.
=== description ===
Краткая аннотация. Если включена опция автогенерации аннотации, то состоит из первых 350 символов основного текста без форматирования.
=== link ===
Ссылка на детальную страницу.
=== tobasketlink ===
Ссылка для добавления товара в корзину.
=== tocomparelink ===
Ссылка для добавления товара в таблицу сравнения.
=== price ===
Цена товара.
=== oldprice ===
Старая цена, может использоваться в маркетинговых целях.
=== art ===
Артикул товара.
=== category ===
Полное название категории, которой принадлежит товар.
=== date ===
Дата создания в формате UTC.
=== urlname ===
Строковой идентификатор URL.
=== iscount ===
Количество на складе.
=== favorite ===
Признак спецпредложения, принимает значения Y/N.
=== new ===
Признак новинки, принимает значения Y/N.
=== vote ===
Текущая оценка товара.
=== cvote ===
Количество голосов.
=== comments ===
Количество комментариев.
=== available ===
Логическое значение, истина, если количество на складе указано больше нуля.
=== images ===
Массив записей с данными о прикрепленных изображениях, может использоваться в качестве параметра функции [[:smarty:smarty6#image|image]]. Каждая запись представляет собой массив с ключами:
* **id** - числовой идентификатор.
* **path** - путь к файлу изображения на сервере.
* **caption** - описание.
* **width** - ширина изображения.
* **height** - высота изображения.
=== idimg ===
Числовой идентификатор первого прикрепленного изображения.
=== files ===
Массив записей с данными о прикрепленных файлах, может использоваться в качестве параметра функции [[:smarty:smarty6#download|download]]. Каждая запись представляет собой массив с ключами:
* **id** - числовой идентификатор.
* **path** - путь к файлу на сервере.
* **link** - ссылка для скачивания.
* **caption** - описание.
* **size** - размер в виде строки.
* **dwnl** - количество скачиваний.
* **mime** - mime тип файла.
=== idfile ===
Числовой идентификатор первого прикрепленного файла.
=== tags ===
Если включено использование тегов, то содержит массив записей с данными о тегах. Каждая запись представляет собой массив с ключами:
* **name** - название тега.
* **link** - ссылка на результаты поиска по тегу.
=== дополнительное поле ===
Значение дополнительного поля (свойства товара).
=== fields ===
Массив записей с данными о дополнительных полях. Каждая запись представляет собой массив с ключами:
* **field** - Строковой идентификатор поля.
* **name** - Описание поля.
* **value** - Значение.
==== $items_pager ====
Объект [[:integration:objects#Многостраничная навигация (нумератор страниц)|постраничной навигации]].
==== Пример шаблона ====
{$category.name}
{if $categories}
{section name=i loop=$categories}
- {$categories[i].name} - ({$categories[i].citems})
{/section}
{/if}
{if $items}
{section name=i loop=$items}
{image id=$items[i].idimg width=80 height=80 align="left"}
{$items[i].name}
{$items[i].description}
Цена: {$items[i].price} {$valute} , В корзину
{/section}
{object obj=$items_pager}
{/if}
===== Детальная страница ([раздел]_page.tpl) =====
Этот тип шаблона содержит все данные выбранноuj товара.
==== $category ====
Массив с данными о текущей категории. Формат данных аналогичен [[#Cтраница категории ([раздел]_category.tpl)|описанному выше]].
==== $item ====
Массив с данными о текущей записи каталога. Формат данных аналогичен формату записей в массиве [[#items|описанном выше]].
==== $ties ====
Массив записей с данными о сопутствующих товарах. Каждая запись представляет собой массив аналогичный по формату [[#items|описанном выше]].
==== $isvote ====
Логическое значение. Если включено оценивание, то принимает значение истина, если пользователь уже оценил материал.
==== $comments ====
Массив записей всех комментариев к товару. Каждая запись представляет собой массив с ключами:
* **date** - дата и время размещения комментария в формате UTC.
* **name** - имя автора комментария.
* **bbcode** - текст комментария в формате BBCode.
* **message** - текст комментария в формате HTML.
==== $form ====
Массив данных для начальных значений формы комментирования. В случае неверного ввода каптчи является копией $_REQUEST, поэтому важно защищать значения с помощью [[:smarty:smarty3#escape|escape]]. Если на сайте используется раздел на базе модуля [[:modules:users|"Пользователи"]], то значение массива с ключом **name** будет замещаться на имя пользователя, в случае если он авторизирован на сайте.
* **name** - имя автора комментария.
* **message** - текст комментария.
==== $captcha ====
Содержит значение, которое может быть использовано в скрытом поле captcha, если форму отправки необходимо сделать без ввода контрольных цифр на рисунке.
==== Пример шаблона ====
{$item.name}
{$item.content}
Цена: {$item.price} {$valute}
{if $item.available}В наличии{else}Нет на складе{/if}
Фото
{section name=i loop=$item.images}
{image data=$item.images[i] width=200 popup=true}
{/section}
{if $options.usefiles} {* Если включены файлы. *}
{download data=$item.files size=true}
{/if}
{if $options.usevote} {* Если включено оценивание. *}
{/if}
{if $options.usecomments} {* Если включено комментирование. *}
{if $comments} {* Вывод комментариев. *}
Комментарии:
{/if}
{section name=i loop=$comments}
{$comments[i].date|date_format:"%d.%m.%Y %T"} {$comments[i].name}:
{$comments[i].message}
{/section}
{if $errors.captcha}
Неверно введены контрольные цифры, попробуйте еще раз.
{/if}
{literal} {* Скрипт валидации формы комментирования. *}
{/literal}
Оставить комментарий:
{* Форма комментирования. *}
{/if}
===== Страница результатов выборки ([раздел]_result.tpl) =====
Этот тип шаблона содержит данные о найденных товарах в результате использования фильтров.
==== $category ====
Если среди применяемых фильтров есть фильтр по категории, то этот массив содержит данные об этой категории. Формат данных аналогичен [[#Cтраница категории ([раздел]_category.tpl)|описанному выше]], за исключением дополнительного ключа:
=== link ===
Ссылка на страницу категории.
==== $items ====
Массив записей с данными о найденных товарах. Формат данных аналогичен формату записей в массиве [[#items|описанном выше]].
==== $items_pager ====
Объект [[:integration:objects#Многостраничная навигация (нумератор страниц)|постраничной навигации]].
==== $filters ====
Массив записей, которые содержат описания примененных фильтров. Каждая запись представляет собой массив с ключами:
=== field ===
Поле к которому применяется фильтр.
=== caption ===
Описание поля.
=== value ===
Значение применяемое в фильтре.
=== link ===
Ссылка на результаты поиска только по этому фильтру.
==== Пример шаблона ====
Результаты поиска
{if $items}
{section name=i loop=$items}
{image data=$items[i].images width=80 height=80 align="left"}
{$items[i].name}
{$items[i].description}
Цена: {$items[i].price} {$valute} , В корзину
{/section}
{object obj=$items_pager}
{/if}
===== Страница корзины ([раздел]_basket.tpl) =====
Этот тип шаблона содержит данные о состоянии корзины пользователя.
==== $basket ====
Массив записей с данными о содержимом корзины. Каждая запись представляет собой массиво с ключами:
=== id ===
Числовой идентификатор позиции в корзине.
=== data ===
Массив с данными о товаре. Формат данных аналогичен [[#items|описанному выше]].
=== sum ===
Сумма позиции корзины (Цена товара умноженная на указанное количество).
=== oldsum ===
"Старая" сумма позиции корзины ("Старая" цена товара умноженная на указанное количество).
=== deletelink ===
Ссылка на удаление позиции из корзины.
==== $all ====
Массив с итоговыми данными по корзине. Состоит из ключей:
=== count ===
Общее количество товаров в корзине.
=== sum ===
Общая сумма по товарам в корзине.
=== oldsum ===
Общая "старая" сумма по товарам в корзине.
==== Пример шаблона ====
Корзина
===== Страница заказа ([раздел]_order.tpl) =====
Этот тип шаблона содержит данные страницы с формой заказа. Набор полей у формы может быть любой, достаточно потом просто составить такой же набор полей в шаблоне письма-уведомления о заказе.
==== $basket ====
Массив записей с данными о содержимом корзины. Формат данных аналогичен [[#basket|описанному выше]], за исключением ссылки удаления.
==== $all ====
Массив с итоговыми данными по корзине. Формат данных аналогичен [[#all|описанному выше]].
==== $form ====
Массив данных для начальных значений формы заказа. По сути является копией массива $_POST, поэтому при выводе важно защищать значения с помощью [[:smarty:smarty3#escape|escape]]. Если на сайте используется раздел на базе модуля [[:modules:users|"Пользователи"]], то значениями массива будут данные пользователя, в случае если он авторизирован на сайте.
===== Страница сообщения ([раздел]_message.tpl) =====
Этот тип шаблона предусмотрен для вывода специального сообщения после успешной отправки формы заказа. Он не содержит специальных данных, текст сообщения об успешной отправке вставляется непосредственно в шаблон.
==== Пример шаблона ====
{$section_name}
Ваш заказ отправлен.
===== Страница полного списка товаров ([раздел]_price.tpl) =====
Этот тип страницы используется для вывода всех товаров сразу в одном прайс-листе.
==== $categories ====
Массив записей с данными о всех категориях (включая подкатегории). Каждая запись состоит из ключей:
=== name ===
Полное название категории.
=== items ===
Массив записей с данными о товарах в категории. Формат каждой записи аналогичен [[#items|описанному выше]], за исключением данных об изображениях и файлах.
==== Пример шаблона ====
Прайс
{section name=i loop=$categories}
{if $categories[i].items}
{$categories[i].name}
Название
Цена
В наличии
{section name=j loop=$categories[i].items}
{$categories[i].items[j].name}
{$categories[i].items[j].price}
{if $categories[i].items[j].available}Да{else}Нет{/if}
В корзину
{/section}
{/if}
{/section}
===== Страница сравнения ([раздел]_compare.tpl) =====
Этот тип шаблона содержит данные о товарах, добавленных для сравнения. Формат данных позволяет осуществить столбчатый вывод всех характеристик товаров.
==== $items ====
Массив записей с данными о товарах добавленных для сравнения. Формат каждой записи аналогичен [[#items|описанному выше]], с дополнительным ключом:
=== deletelink ===
Ссылка для удаления товара из таблицы сравнения.
==== $fields ====
Массив с данными о всех дополнительных полях (характеристиках). Ключами являются названия полей, а значениями - их описания.
==== Пример шаблона ====
Сравнение
Название
{section name=i loop=$items}
{$items[i].name}
{/section}
Фото
{section name=i loop=$items}
{image data=$items[i].images height=160 width="160" popup=true}
В корзину
Удалить
{/section}
Цена
{section name=i loop=$items}
{$items[i].price} {$valute}
{/section}
{foreach from=$fields key=field item=caption}
{$caption}
{section name=i loop=$items}
{$items[i].$field}
{/section}
{/foreach}
===== Страница своих заказов ([раздел]_myorders.tpl) =====
Этот тип шаблона может использоваться только если на сайте используется модуль [[:modules:users|"Пользователи"]]. На этой странице авторизированный пользователь может смотреть архив своих заказов и отслеживать их статусы.
==== $orders ====
Массив записей с данными о заказах пользователя. Каждая запись представляет собой массив с ключами:
=== id ===
Числовой идентификатор заказа.
=== date ===
Дата и время заказа в формате UTC.
=== content ===
Содержание заказа в текстовом виде (формируется по шаблону письма уведомления о новом заказе).
=== basket ===
Массив записей с данными о содержимом корзины. Формат данных аналогичен [[#basket|описанному выше]].
=== count ===
Общее количество товаров в заказе.
=== sum ===
Общая сумма заказа.
=== status ===
Статус заказа.
* **0** - Не обработан.
* **1** - Оплачен.
* **2** - Обработан.
==== $orders_pager ====
Объект [[:integration:objects#Многостраничная навигация (нумератор страниц)|постраничной навигации]].
==== Пример шаблона ====
Мои заказы
{if $orders}
№
Состав
Сумма
Статус
{section name=i loop=$orders}
{$orders[i].id}
{section name=j loop=$orders[i].basket}
{$orders[i].basket[j].data.name} - {$orders[i].basket[j].count} шт.
{/section}
{$orders[i].sum} {$valute}
{if $orders[i].status>1}Обработан{else}Ожидает{/if}
{/section}
{object obj=$orders_pager}
{else}
Нет данных.
{/if}