Помогите решить проблему с вызовом компонентов

Есть некий код который из ресурсов и категорий делает табы с ресурсами.

С pdoResources все работает, но хочу заменить на msProducts (чтобы сделать корзину) и все перестает работать… помогите пожалуйста… видимо из-за json что-то глючит… пробовал разные варианты, но ничего не получается.



<div class="section3" id="product">
  <div class="container">
    <div class="row">
      <div class="col-md-12"><div class="h1 invert">Типы тортов</div></div>
    </div>
    <div class="row clearfix">
      {var $resource_list = $_modx->runSnippet('!pdoResources', [
          'parents' => '2'
          'tpl' => 'tpl.product'
          'sortby' => 'menuindex'
          'sortdir' => 'ASC'
          'limit' => '0'
          'includeTVs' => 'img,price'
        'return' => 'json'
      ])}

      {set $tab_parent = '2'}

      {set $tabs = ''}
      {foreach $resource_list | fromJSON | split as $item}
        {set $parent = $item['parent']}
        {set $id = $item['id']}
        {set $pagetitle = $item['pagetitle']}
        {set $description = $item['description']}
        {set $price = $item['tv.price']}
        {set $img = $item['tv.img']}
        {set $list = $list}

        {if $parent == $tab_parent}
          {set $tabs = $tabs ~ '<li role="presentation"><a href="#' ~ $id ~ '" aria-controls="' ~ $id ~ '" role="tab" data-toggle="tab">' ~ $pagetitle ~ '</a></li>'}
        {else}
          {set $tab_childs[$parent][$id] = '<div class="col-sm-6 col-md-3 divMatch">
        <div class="product box">
          <div class="img">
            '~$list~'
            <a href="{$_modx->runSnippet("phpthumbon", [
              "options" => "&w=800",
              "input" => "'~$img~'"
            ])}" data-fancybox>
            <img src="{$_modx->runSnippet("phpthumbon", [
              "options" => "&w=250&h=250&zc=1",
              "input" => "'~$img~'"
            ])}" class="img-responsive">
            </a>
          </div>
          <div class="pattern"></div>
          <div class="title">' ~ $pagetitle ~ '</div>
          <div class="desc">'~$description~'</div>
          <div class="pattern"></div>
          <div class="price"><strong>'~$price~'</strong> Р / <span>кг</span></div>
          <div class="bt dark"><a href="#" data-pr-title="' ~ $pagetitle ~ '" data-pr-id="'~$id~'" data-toggle="modal" data-target="#buy_form"  class="buy-product">Хочу подобный</a></div>
        </div>
      </div>'}
        {/if}
      {/foreach}


      <ul class="tabs_list" role="tablist">{$tabs}</ul>
      <div class="tab-content">
        {foreach $tab_childs as $parent_id => $tab_content first=$first}
          <div role="tabpanel" class="tab-pane fade in{$first?' active':''}" id="{$parent_id}">
            {foreach $tab_content as $tab_item}
              {$tab_item}
            {/foreach}
          </div>
        {/foreach}
      </div>
                    
    </div>
  </div>
</div>
UDAV
02 августа 2017, 09:28
modx.pro
987
0

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

Алексей Ерохин
02 августа 2017, 13:23
0
$resource_list | fromJSON | split

fromJSON возвращает массив, split не нужен

{foreach $tab_childs as $parent_id => $tab_content first=$first}
first=$first — это здесь не нужно

Явных косяков больше не вижу.
    UDAV
    02 августа 2017, 13:43
    0
    Ничего не выводится.

    {var $resource_list = $_modx->runSnippet('!msProducts', [
              'parents' => '2',
              'tpl' => 'tpl.product',
              'sortby' => 'menuindex',
              'sortdir' => 'ASC',
              'limit' => '0',
              'includeTVs' => 'img,price',
              'return' => 'json'
        	])}
    
        	{$resource_list}

    если убрать 'return' => 'json' то выводятся ресурсы, но табов нет никаких… что-то явно косячит из-за json
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
3