Skip to content
ms2Gallery
ms2Gallery
Улучшенная галерея miniShop2 для ресурсов любых типов
  1. Компоненты
  2. ms2Gallery
  3. Сниппеты
  4. ms2Gallery

ms2Gallery

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

Параметры

ПараметрПо умолчаниюОписание
parentsСписок категорий, через запятую, для поиска результатов. По умолчанию выборка ограничена текущим родителем. Если поставить 0 - выборка не ограничивается.
resourcesСписок ресурсов, через запятую, для вывода в результатах. Если id товара начинается с минуса, этот товар исключается из выборки.
showLogПоказывать дополнительную информацию о работе сниппета. Только для авторизованных пользователей в контексте mgr.
toPlaceholderЕсли не пусто, сниппет сохранит все данные в плейсхолдер с этим именем, вместо вывода на экран.
tpltpl.ms2GalleryЧанк оформления всей галереи с использованием Fenom.
limitЛимит выборки результатов
offsetПропуск результатов с начала выборки
whereСтрока, закодированная в JSON, с дополнительными условиями выборки. Для фильтрации по файлам нужно использовать псевдоним таблицы File. Например: &where=`{"File.name:LIKE":"%img%"}`
filetypeТип файлов для выборки. Можно использовать image для указания картинок и расширения для остальных файлов. Например: image, pdf, xls, doc.
showInactiveПоказывать неактивные файлы.
sortbyrankСортировка выборки.
sortdirASCНаправление сортировки
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 и должен самостоятельно его разобрать:

fenom
{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:

modx
[[!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- атрибуты.

Если скрипты и стили вам не нужны, просто укажите эти параметры пустыми:

modx
[[!ms2Gallery?
  &frontend_css=``
  &frontend_js=``
]]

Примеры

Вывод галереи из файлов текущего ресурса

modx
[[!ms2Gallery]]

Вывод картинок из нескольких ресурсов в одну галерею

modx
[[!ms2Gallery?
  &parents=`0`
  &resources=`5,16,7`
]]