Как вывести params дочерних категорий? Есть решение

Здравствуйте. Есть страница с брендами, которая выглядит вот так:

<script type="text/javascript" src="{$wa_theme_url}sortiro.js"></script>

{$cat=$wa->shop->category(132,null,true,true)}

{if $cat.subcategories}
<div class="brand-box">
	<ul>
	    {foreach $cat.subcategories as $sc}
		    <li>
		    	<a href="{$sc.url}"><img src="http://j-guitar.ru/wa-data/site/brand-logo/{$sc.params.image}"></a>
		    	<p>{$sc.name|escape}</p>
		    </li>
		{/foreach}
	</ul>
</div>
{/if}
<br>
  • В фильтре к каждому бренду добавляю ключ image=key например:[image=adonis.jpg]
  • Через файл-менеджер добавил папку "brands-logo" куда и поскидывал логотипы.
  • В конец пути <img> вставил {$sc.params.image} надеясь тем самым прикрепить лого к моим брендам.

Собственно проблема в том, что {$sc.params.image} не захватывает image=key с моих категорий. Подскажите пожалуйста как можно решить эту проблему?

9 ответов

  • 2

    Перед

    {if $cat.subcategories}

    добавьте и проверьте попадают ли параметры

    {$cat.subcategories|wa_dumpc}
    
    • +1
      J-guitar J-guitar 1 сентября 2017 13:14 #

      Если поставить

      {$cat.subcategories|wa_dumpc}

      , то выкатывается такая простыня (и так для всех id) прямо на странице:

      dumped from wa-cache/apps/site/templates/compiled/site_ru_RU/8a/5c/2a/8a5c2a3ece69a89c3bf16424ac4b4fdd68d6362f.string.php line #34:
      
      array(
        183 => array(
          'id' => '183',
          'left_key' => '2',
          'right_key' => '3',
          'depth' => '1',
          'parent_id' => '132',
          'name' => 'Magneto',
          'meta_title' => '',
          'meta_keywords' => '',
          'meta_description' => '',
          'type' => '1',
          'url' => '/category/brands/magneto/',
          'full_url' => 'brands/magneto',
          'count' => '1',
          'description' => '<p>Серийно производимые инс...</p>,
          'conditions' => 'proizvoditel_.value_id=336',
          'create_datetime' => '2017-09-01 10:13:07',
          'edit_datetime' => '2017-09-01 10:38:09',
          'filter' => NULL,
          'sort_products' => NULL,
          'include_sub_categories' => '0',
          'status' => '1',
        ),


      • +2

        Дерзайте

        {$cat = $wa->shop->category(132,null,true,true)}
        {if $cat.subcategories}
        <div class="brand-box">
            <ul>
            {foreach $cat.subcategories as $sc}
                {$sc = $wa->shop->category($sc.id,null,true,true)}
                <li>
                    <a href="{$sc.url}"><img src="http://j-guitar.ru/wa-data/site/brand-logo/{$sc.params.image}"></a>
                    <p>{$sc.name|escape}</p>
                </li>
            {/foreach}
            </ul>
        </div>
        {/if}
        • +1
          J-guitar J-guitar 1 сентября 2017 13:55 #

          Оп-па. Заработало! Спасибо большое. Плюсцов всем отсыпал.

          P.S. Не могли бы вы мне на будущее подсказать, что это - "null,true,true)}" чего-то не смог найти внятной инфы.


          • +2
            Алексей Алексей Webasyst 1 сентября 2017 14:24 #

            public function categories($id = 0, $depth = null, $tree = false, $params = false, $route = null)
            /wa-apps/shop/lib/classes/shopViewHelper.class.php

            • +1
              J-guitar J-guitar 1 сентября 2017 14:53 #

              Спасибо, стало чуточку понятнее.

              А что такое $depth и $route? Может есть какой-нибудь справочник?

  • 2
    Genasyst 1 сентября 2017 12:10 #

    Прогоните подкатегории через

    {$sc=$wa->shop->category($sc,null,true,true)}

    • +1
      J-guitar J-guitar 1 сентября 2017 13:20 #

      Простите, я пока только салага в веб движухе.

      Не могли бы вы подробнее объяснить, что значит "прогнать категории через {$sc=$wa->shop->category($sc,null,true,true)}"?

      Был бы вам весьма признателен.

Добавить ответ

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