Вывод полей во вложенном компоненте через Ajax

Всем привет!

Есть страница с pdoPage, вызов такой:
[[!pdoPage?
    &parents = `25`
    &tpl = `tpl.catalogItem`
    &includeTVs = `objectCity,objectArea`
    &ajaxMode = `button`
]]
в шаблоне дополнительно вызывается ms2gallery:
<div class="catalog__item catalog__item_[[+idx]]">
    <div class="catalog__thumb">
        [[!ms2Gallery?
            &resources=`[[+id]]`
            &tpl=`tpl.ms2GalleryCatalog`
        ]]
    </div>
    <div class="catalog__desc">
           ...
    </div>
</div
шаблон галереи tpl.ms2GalleryCatalog выглядит так:
<div class="fotorama" data-link="[[~[[+id]]]]">
    {if $files?}
        {foreach $files as $file}
            <img src="{$file['catalog']}" alt="[[+longtitle]], [[+tv.objectCity]], [[+tv.objectArea]]">
        {/foreach}
    {/if}
</div>
Когда открывается страница, все ок. Но как только наживаешь на «Показать еще», в новых блоках не выводятся поля из шаблона tpl.ms2GalleryCatalog. При этом сама галерея подгружается нормально. Как заставить ms2Gallery подхватить поля из своего шаблона при загрузке Ajax-ом?
Евгений
20 сентября 2018, 16:42
91
0

Комментарии: 7

Баха Волков
20 сентября 2018, 19:14
0
Случаем дело не в том, что fotorama не в курсе о новых блоках? Или я неправильно понял вопрос?
Баха Волков
20 сентября 2018, 19:29
0
А ну еще не забудьте про processTVs
    Евгений
    21 сентября 2018, 12:06
    0
    fotorama тут ни при чем.
    даже если оставить чанк tpl.ms2GalleryCatalog вида
    <div class="id[[+id]]"></div>
    он не подхватывает поле id.
    тут проблема в том, что не воспринимается [[+id]] и т.д.
    Если указать [[*id]], например — все ок, он берет id текущей страницы, вопрос том, как pdoPage передать в ms2Gallery поля нужного ресурса.
    Ставил &processTVs=`1`, не помогло
      Баха Волков
      21 сентября 2018, 16:25
      0
      Ну значит я не понял сути вопроса
      Баха Волков
      21 сентября 2018, 16:26
      0
      Вот теперь понял о чём идёт речь, ну будем думать
Aleksandr Huz
21 сентября 2018, 13:58
0
Попробуйте передать параметры из сниппета ms2Gallery в чанк tpl.ms2GalleryCatalog
[[!ms2Gallery?
  &resources=`[[+id]]`
  &tpl=`tpl.ms2GalleryCatalog`
  &id=`[[+id]]`
  &tv.objectCity=`[[+tv.objectCity]]`
  ...
]]
    Евгений
    21 сентября 2018, 14:04
    0
    не помогает. Тут именно с Ajax-ом ерунда какая-то происходит. При стандартной пагинации все подхватывается как надо.