ms2Gallery

Купить ms2Gallery в магазине дополнений →
11 января 2017, 10:53

Сниппет для вывода галереи ресурса.

Параметры

Параметр По умолчанию Описание
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`
]]