MODX REVO MIGX + FENOM подскажите синтаксис вложенных MIGX полей?

Приветствую, обычно MIGX поля вывожу вот так:

Обычно ПЕРВЫЙ ВЫЗОВ так:
[[!getImageList? 
    &tvname=`migxtvname`
    &tpl=`tpl_collection`
    .....
]]
На Fenom так:
{set $tvname = json_decode(1 | resource : 'migxtvname', true)}
  {if $tvname}
     {foreach $tvname as $item}
        {$item.title}
     {/foreach}
  {/if}
Вот так ВТОРОЙ вызов, ВЛОЖЕННЫЙ, есть параметр VALUE.
TPL из первого вызова: tpl_collection
[[getImageList?
      &value=`[[+collection]]`
      ......
]]
А как на Fenom это будет выглядеть? Подскажите пожалуйста.
Понимаю что два foreach будет, но не пойму куда &value=`[[+collection]]` вписать.
Роман
19 июня 2022, 21:33
modx.pro
517
0

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

Артур Шевченко
19 июня 2022, 23:04
1
+1
{set $tvname = json_decode(1 | resource : 'migxtvname', true)}
  {if $tvname}
     {foreach $tvname as $item}
        {$item.title}
        {foreach $item.collection as $el}
            {$el.name}
        {/foreach}
     {/foreach}
  {/if}
    Роман
    19 июня 2022, 23:26
    0
    К сожалению так не получается, пробовал, все сложнее, второй foreach не выводит ничего,

    {set $photo_collection = json_decode($item.id | resource : 'photo_collection', true)}
      {if $photo_collection}
         {foreach $photo_collection as $item}
            
            {foreach $item.collection as $el}
                {$el.image}
            {/foreach}
        
         {/foreach}
      {/if}
    Если вывести из первого foreach $photo_collection
    То такой массив там, и я хочу вытащить оттуда collection, в нем лежат изображения в формате json похоже, и вот это не получается
    Array
    (
        [0] => Array
            (
                [MIGX_id] => 1
                [colorName] => NERO / BLACK 
                [vendor] => L20085401
                [colorMarker] => black
                [collection] => [{"MIGX_id":"3","image":"2SoAetNZ.jpeg"},{"MIGX_id":"4","image":"5A3zbEBs.jpeg"},{"MIGX_id":"5","image":"5cy9U9im.jpeg"},{"MIGX_id":"1","image":"b2-G7nbg.jpeg"},{"MIGX_id":"2","image":"aR0FzIGA.jpeg"}]
                [collection_view_ro] => {"MIGX_id":"1","name":"chunk_photo_collection","use_as_fallback":"","value":"","clickaction":"","handler":"","image":"","idx":0,"_renderer":"this.renderChunk","selectorconfig":""}
                [_this.value] => 
                [collection_view] => 
            )
    
        [1] => Array
            (
                [MIGX_id] => 2
                [colorName] => BORDEAUX-FLUO ORANGE
                [vendor] => L20085414
                [colorMarker] => orange
                [collection] => [{"MIGX_id":"3","image":"Ryz-untQ.jpeg"},{"MIGX_id":"4","image":"-pXqJOEi.jpeg"},{"MIGX_id":"5","image":"H-7gDmzj.jpeg"},{"MIGX_id":"1","image":"AqeGW2OA.jpeg"},{"MIGX_id":"2","image":"8ElOkJNA.jpeg"}]
                [collection_view_ro] => 
                [_this.value] => 
                [collection_view] => 
            )
    
        [2] => Array
            (
                [MIGX_id] => 3
                [colorName] => Желтый
                [vendor] => L20085460
                [colorMarker] => neon
                [collection] => [{"MIGX_id":"1","image":"s_1c59AU.jpeg"},{"MIGX_id":"2","image":"2bvVS8Wo.jpeg"},{"MIGX_id":"3","image":"gkEqimIE.jpeg"}]
                [collection_view_ro] => 
                [_this.value] => 
                [collection_view] => 
            )
    
        [3] => Array
            (
                [MIGX_id] => 4
                [colorName] => Синий
                [vendor] => L20085408
                [colorMarker] => blue
                [collection] => [{"MIGX_id":"1","image":"1LIor5rA.jpeg"},{"MIGX_id":"2","image":"Y6geSNls.jpeg"},{"MIGX_id":"3","image":"J6SpPwLQ.jpeg"},{"MIGX_id":"4","image":"TXS7Rdsk.jpeg"}]
                [collection_view_ro] => 
                [_this.value] => 
                [collection_view] => 
            )
    
    )
      Артур Шевченко
      19 июня 2022, 23:32
      1
      +1
      Правильно, мой косяк, я забыл написать преобразование в масив
      {set $photo_collection = json_decode($item.id | resource : 'photo_collection', true)}
        {if $photo_collection}
           {foreach $photo_collection as $item}
              {set $collection = $item.collection | fromJSON}
              {foreach $collection as $el}
                  {$el.image}
              {/foreach}
          
           {/foreach}
        {/if}
        Роман
        19 июня 2022, 23:39
        0
        Благодарю!
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    4