
Сниппеты MiniShop3
MiniShop3 предоставляет набор сниппетов для построения интернет-магазина на фронтенде. Все сниппеты работают через pdoTools и поддерживают шаблонизатор Fenom.
Обзор сниппетов
| Сниппет | Назначение |
|---|---|
| msProducts | Вывод списка товаров с фильтрацией и сортировкой |
| msCart | Отображение корзины покупок |
| msOrder | Форма оформления заказа |
| msGetOrder | Получение информации о заказе |
| msGallery | Галерея изображений товара |
| msOptions | Вывод опций для фильтрации товаров |
| msProductOptions | Характеристики конкретного товара |
| msCustomer | Личный кабинет покупателя |
| msOrderTotal | Итоговая сумма заказа |
Общие принципы
Вызов сниппетов
Все сниппеты можно вызывать через Fenom:
fenom
{'msProducts' | snippet : [
'parents' => 5,
'limit' => 10
]}Или через стандартный синтаксис MODX:
modx
[[!msProducts?
&parents=`5`
&limit=`10`
]]Кэширование
Сниппеты, работающие с сессией пользователя (msCart, msOrder, msCustomer), должны вызываться некэшированно (с !).
Параметр return
Большинство сниппетов поддерживают параметр return, определяющий формат вывода:
| Значение | Описание |
|---|---|
tpl | Обработка через чанк (по умолчанию) |
data | Возврат массива данных |
json | Возврат JSON-строки |
ids | Только ID записей через запятую |
Параметр toPlaceholder
Вместо прямого вывода можно сохранить результат в плейсхолдер:
fenom
{'msProducts' | snippet : [
'toPlaceholder' => 'products'
]}
{* Позже использовать *}
{$_modx->getPlaceholder('products')}Чанки по умолчанию
MiniShop3 устанавливает набор готовых чанков:
| Сниппет | Чанк по умолчанию |
|---|---|
| msProducts | tpl.msProducts.row |
| msCart | tpl.msCart |
| msOrder | tpl.msOrder |
| msGetOrder | tpl.msGetOrder |
| msGallery | tpl.msGallery |
| msOptions | tpl.msOptions |
| msProductOptions | tpl.msProductOptions |
Чанки можно переопределить, создав свои версии или указав другой чанк в параметре tpl.
