migx в migx

Господа, доброго времени суток, призываю гуру MODx.
Не могу вывести мигс в мигс. Прошу сильно не ругать так как совсем новичок.
Вот код:
MIGX_TV1
[
  {
    "caption": "Заголовок",
    "fields": [
      {
        "field": "id",
        "caption": "id Таба",
        "inputTVtype": "text"
      },
      {
        "field": "name",
        "caption": "Имя Таба",
        "inputTVtype": "text"
      },
      {
        "field": "items",
        "caption": "товары",
        "inputTV":"goods"
      }
    ]
  }
]
MIGX_TV2
[
  {
    "caption": "Заголовок",
    "fields": [
      {
        "field": "image",
        "caption": "Изображение",
        "inputTVtype": "image",
        "sourceFrom": "migx"
      },
      {
        "field": "title",
        "caption": "Заголовок",
        "inputTVtype": "text"
      },
      {
        "field": "description",
        "caption": "Описание",
        "inputTVtype": "richtext"
      }
    ]
  }
]
В самом ресурсе все прекрасно выводится, а на сайте нет
Вызываю вот так:
1 вызов
[[getImageList? &tvname=`tv` &tpl=`tpl1`]]
2 вызов
<div class="tab-pane active" id="[[+id]]">[[getImageList? &tpl=`tpl2` &value=`[[+items]]`]]</div>
На сайт информацию не выводит, но есть возможность добавить «товар» в админке, если после добавления изменить имя в поле «field»: «items», то код выводит.
спасибо!
Иван Петров
05 марта 2017, 19:34
modx.pro
2
1 767
0

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

PG
PG
06 марта 2017, 16:34
0
написано на скорую руку, Вы уже можете пилить под свои нужды
создайте сниппет getTabs
// вызов [[!getTabs? &input=`[[*id1]]`]]
$tabs = (json_decode($input, true));
$i = 0;
$res = ''; 
foreach ($tabs as $tab){ 
    $out = '';
    foreach (json_decode($tab['items'],true) as $good){
        $out .= $modx->getChunk('tpl2',$good);
    }
    $tabs[$i]['items'] = $out;
    $res .= $modx->getChunk('tpl1',$tabs[$i]);
    $i++;
} 
return $res;
ну и в чанке tpl1 вместо вызова getImageList использовать плейсхолдер [[+items]]
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    1