
ms2Gallery
Сниппет для вывода галереи ресурса.
Параметры
| Параметр | По умолчанию | Описание |
|---|---|---|
| parents | Список категорий, через запятую, для поиска результатов. По умолчанию выборка ограничена текущим родителем. Если поставить 0 - выборка не ограничивается. | |
| resources | Список ресурсов, через запятую, для вывода в результатах. Если id товара начинается с минуса, этот товар исключается из выборки. | |
| showLog | Показывать дополнительную информацию о работе сниппета. Только для авторизованных пользователей в контексте mgr. | |
| toPlaceholder | Если не пусто, сниппет сохранит все данные в плейсхолдер с этим именем, вместо вывода на экран. | |
| tpl | tpl.ms2Gallery | Чанк оформления всей галереи с использованием Fenom. |
| limit | Лимит выборки результатов | |
| offset | Пропуск результатов с начала выборки | |
| where | Строка, закодированная в JSON, с дополнительными условиями выборки. Для фильтрации по файлам нужно использовать псевдоним таблицы File. Например: &where=`{"File.name:LIKE":"%img%"}` | |
| filetype | Тип файлов для выборки. Можно использовать image для указания картинок и расширения для остальных файлов. Например: image, pdf, xls, doc. | |
| showInactive | Показывать неактивные файлы. | |
| sortby | rank | Сортировка выборки. |
| sortdir | ASC | Направление сортировки |
| frontend_css | [[+cssUrl]]web/default.css | Если вы хотите использовать собственные стили - укажите путь к ним здесь, или очистите параметр и загрузите их вручную через шаблон сайта. |
| frontend_js | [[+jsUrl]]web/default.js | Если вы хотите использовать собственные скрипты - укажите путь к ним здесь, или очистите параметр и загрузите их вручную через шаблон сайта. |
| tags | Список тегов, разделённых запятыми, для вывода файлов. | |
| tagsVar | Если этот параметр не пуст, то сниппет будет принимать из значение tags в $_REQUEST["указанноеимя"]. Например, если вы укажите здесь tag, то сниппет будет выводить только файлы, подходящие в $_REQUEST["tag"]. | |
| getTags | Сделать дополнительные запросы, чтобы получить строку с тегами файла? | |
| tagsSeparator | , | Если вы включили получение тегов файлов при выводе, они будут разделены через строку, указанную в этом параметре. |
Чанки
До версии 2.0 в ms2Gallery использовалось 4 чанка:
- tplRow - Чанк оформления одного элемента выборки
tpl.ms2Gallery.row. - tplOuter - Обёртка для вывода результатов работы сниппета
tpl.ms2Gallery.outer. - tplEmpty - Чанк, который выводится при отсутствии результатов
tpl.ms2Gallery.empty. - tplSingle - Чанк, который используется если получен всего один файл.
Теперь же - всего один tpl, который получает массив $files и должен самостоятельно его разобрать:
{if count($files) > 1}
<!-- файлов много - разбираем их в цикле-->
{foreach $files as $file}
<a href="{$file.url}">
<img src="{$file.small}" />
</a>
{/foreach}
{elseif count($files) == 1}
<!--всего одна картинка, печатаем весь массив данных-->
{$file | print}
{else}
Файлов нет, выводим эту надпись.
{/if}Все превью, сгенерированные для файлов, подключаются автоматически под своими псевдонимами.
Если вы не хотите переходить на новый формат оформления, то просто укажите свои старые чанки и пустой &tpl:
[[!ms2Gallery?
&tplRow=`tpl.ms2Gallery.row`
&tplOuter=`tpl.ms2Gallery.outer`
&tplEmpty=`tpl.ms2Gallery.empty`
&tplSingle=`tpl.ms2Gallery.single`
&tpl=``
]]Но лучше, конечно, переписать их на Fenom. Это будет и работать удобнее, и менять быстрее.
Скрипты и стили
Подключаемые скрипты и стили указываются параметрами frontend_css и frontend_js. По умолчанию там простенькое оформление и смена основной картинки при клике (для старых чанков, до версии 2.0).
Для нового чанка версии 2.0 подключается еще и Fotorama, если у контейнера с картинками присутствует class="fotorama". Вы можете настраивать её согласно документации через data- атрибуты.
Если скрипты и стили вам не нужны, просто укажите эти параметры пустыми:
[[!ms2Gallery?
&frontend_css=``
&frontend_js=``
]]Примеры
Вывод галереи из файлов текущего ресурса
[[!ms2Gallery]]Вывод картинок из нескольких ресурсов в одну галерею
[[!ms2Gallery?
&parents=`0`
&resources=`5,16,7`
]]