ms2Gallery и fenom, как заставить верно работать?

Решил научиться на феноме писать чанки и шаблоны…

Есть список ресурсов и в чанке выводится первое фото из этого ресурса со ссылкой на этот ресурс, вызывал раньше так
<a href="[[~[[+id]]]]" title="[[+longtitle]]">
	[[!ms2Gallery?
	&tplRow=`@INLINE <img src="[[+360x270]]" alt="[[*longtitle]]">`
	&tplOuter=`@INLINE [[+rows]]`
	&tplEmpty=`@INLINE <img src="img/theme/logo.png">`
	&resources=`[[+id]]`
	&limit = `1`
	]]
</a>
но пытаюсь переделать на феном и не получается

<a href="[[~[[+id]]]]">
      {$_modx->runSnippet('!ms2Gallery', [
        'parents' => '0',
        'tplRow' => '@INLINE <img src="{$small}" alt="">'
    	'resources' => '{$id}'
    	'limit' => '1'
      ])}
    </a>
Как у href подставить верный ид и как в снипете вызывать правильно параметры?
'resources' => '{$id}' не срабатывает, если вручную подставлять ид, то ок.
'tplRow' => '@INLINE ' — вообще не работает, чтобы я тут не указывал.
UDAV
18 февраля 2017, 06:56
modx.pro
1
2 564
0

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

Гриборий
18 февраля 2017, 11:07
0
'resources' => {$id},
Кавычки только у ключа нужны в таком случае. И запятые потеряли.
    Дмитрий
    18 февраля 2017, 11:58
    +2
    Вы вызываете Fenom внутри Fenom :)
    Уберите внутри вызова runSnippet все фигурные скобки, не относящиеся к шаблонам
    {$_modx->runSnippet('!ms2Gallery', [
            'parents' => '0',
            'tplRow' => '@INLINE <img src="{$smal}l" alt="">'
        	'resources' => $id
        	'limit' => '1'
          ])}
      Евгений Webinmd
      18 февраля 2017, 12:25
      +1
      1.
      href="{$uri}"
      2.
      href="{$id|url}"
      ну и запятые у параметров сниппета не надо забывать

      {$_modx->runSnippet('!ms2Gallery', [
              'parents' => 0,
              'tplRow' => '@INLINE <img src="{$small}" alt="">',
          	'resources' => $id,
          	'limit' =>1
            ])}
      Но лучше посмотрите на сниппет ms2GalleryResources
        UDAV
        18 февраля 2017, 16:44
        0
        Спасибо за ответы. Но только почему-то у меня все равно вместо инлайн стилей грузится другой код со ссылкой на картинку, а не просто фотография выводится.
        Вызывается стандартный tpl.ms2Gallery вместо @INLINE… хм.
          UDAV
          18 февраля 2017, 17:21
          0
          а, я понял, в 2.0 нет tplRow… а как быть? не делать же отдельный чанк.
            Андрей П
            18 февраля 2017, 17:29
            +2
            Сделайте 'tpl' по примеру стандартного чанка. А внутри foreach у Вас будет то, что раньше было в tplRow.
            Например так
            <div class="anim-imgs just-gallery" data-row-height="100">
                {if $files?}
                    {foreach $files as $file}
                        <a class="zoom" href="{$file['url']}"><img alt="" src="{$file['small']}" width="100px"></a>
                    {/foreach}
                {else}
                {/if}
            </div>
              UDAV
              18 февраля 2017, 18:06
              0
              Спасибо. Думал что можно все-таки инлайном, как в старой версии_)
                Гриборий
                18 февраля 2017, 19:38
                0
                Для tpl есть дефолтный чанк в параметрах сниппета. Укажите его пустым и будут работать отдельные чанки.
                Инлайном можно. Но фигурные скобки вокруг плейсхолдеров как раз нужны в этом случае. Тк это типа отдельный чанк же.
          Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
          8