Как вывести на страницу ВСЕ категории товара подряд?

Мне нужно вывести на главную страницу несколько категорий

Задаю для этих категорий дополнительный параметр on_main=1

теперь в home.html

{$categories = $wa->shop->categories(0, 1, true, true)}

{foreach $categories as $category}

{if $category.params.on_main}

{$category.name}<br>

{/if}

{/foreach}

Что означают параметры categories(0, 1, true, true)?

Как добиться, чтобы в этом массиве были все категории с подкатегориями? Уровней подкатегорий 3, но могут еще появиться

2 ответа

  • 1

    Сколько уровней вложенности в вашем каталоге?

    • +1
      kanri kanri 15 ноября 2016 12:25 #

      3. Но теоретически заказчик может еще добавить

  • 1

    Значит нужно запустить еще 2 цикла внутри {foreach $categories as $category}

    Все вместе должно выглядеть примерно так


    <ul>
    {foreach $categories as $c}
    <li>
    <a href="{$c.url}">{$c.name}</a>
    {if $c.childs}
    <ul>
        {foreach $c.childs as $a}
        <li>
        <a href="{$a.url}">{$a.name}</a>
        {if $a.childs}
        <ul>
            <li><a href="{$a.url}">{$a.name}</a></li>
            {foreach $a.childs as $d}
            <li>
            <a href="{$d.url}">{$d.name}</a>
            {if $d.childs}
            <ul>
                {foreach $d.childs as $c}
                <li><a href="{$c.url}">{$c.name}</a></li>
                {/foreach}
            </ul>
            {/if}
            </li>
            {/foreach}
        </ul>
        {/if}
        {/foreach}
    </ul>
    {/if}
    </li>
    {/foreach}
    </ul>


    • +1
      kanri kanri 15 ноября 2016 12:43 #

      Спасибо

      Я примерно так и делаю

      Т.е. доступа ко всем категориям сразу, как к одному массиву, - нет?



      • +2

        Это и есть массив.

        1 - параметр: идентификатор категории с которой начинается выборка, она считается родителем. Например если вам нужна только одна ветка категорий с ее подкатегориями.

        2 - параметр: уровень вложенности выборки. Например нужно только категории 2 уровня.

        3 - параметр: представление массива категорий, одномерный или древовидный.

        4 - параметр: позволяет выбрать доп. параметры категорий.

        *если вам нужен одномерный массив, то просто замените третий параметр на false. Для выборки всех категорий с их подкатегориями второй параметр замените на null.

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

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