Хаки и Скрипты Next Generation CMS

Ответ на последний вопрос "Как вывести список подкатегорий?"

irbees2008 irbees2008 Опубликовано - 27 - декабря TWIG
2812 - 3
  • Автор: infinity237
  • Обсудить на :на форуме
  • Адаптировал: irbees2008
  • Уровень сложности исполнения: Справочник

Не успел я разжувать этот вопрос сегодня, за меня это сделал инфинити на форуме, ну что же поделать, но и там я увидел то что я не знал.
Итак приступим
Смотрим что у нас указано в справке:

Цитата:
getCategoryTree($filter) - выводит массив с деревом категорий, где:
$filter - фильтр выдаваемой информации:
не определён - если переменная не определена (не передаётся в функцию), то выводится полное дерево категорий
ID - вывести категорию и всех её детей
:ID - вывести всех детей заданной категории


{% for entry in getCategoryTree(':6') %}
[{{entry.id}}]({{ entry.level }}) {{ entry.cat }}
{% endfor %}

Как у меня указано в статье Выводим подкатегории текущей категории на TWIGстатье
Там у меня вывод подкатегорий в любой категории
Код:
 {% for entry in getCategoryTree(category.id) %}
{% if (entry.level == (category.level+1)) %}
<h3><a href="{{ entry.link }}">{{ entry.cat }}</a></h3>
{% endif %}
{% endfor %}

Так чтобы вывести подкатегории определенной категории в первой строчке меняем category.id на id категории из которой нужны подкатегории

kategorii.png (55.59 Kb)
На изображении видно как посмотреть id категории, просто наводите мышкой на категорию и высвечиваеся номер категории который и есть id.

Но также я узнал что можно вывести категорию, вот так
Код:
 {% if (entry.level == 0) %}
<h1><a href="{{ entry.link }}">{{ entry.cat }}</a></h1>
{% endif %}
entry.level в данном варианте равен 0, т.е. будет выведена категория заданная в id .
Далее вот этот код
Код:
 {% if (entry.level == 1) %}
<h3><a href="{{ entry.link }}">{{ entry.cat }}</a></h3>
{% endif %}
entry.level в данном варианте равен 1, т.е.выводим подкатегории указанной категории

И поскольку пользователь спрашивал о выводе нескольких блоков разных категорий с подкатегориями то код будет примерно такой
Код:
{% for entry in getCategoryTree(1) %}
{% if (entry.level == 0) %}
<h1><a href="{{ entry.link }}">{{ entry.cat }}</a></h1>
{% endif %}
{% if (entry.level == 1) %}
<h3><a href="{{ entry.link }}">{{ entry.cat }}</a></h3>
{% endif %}
{% endfor %}

{% for entry in getCategoryTree(2) %}
{% if (entry.level == 0) %}
<h1><a href="{{ entry.link }}">{{ entry.cat }}</a></h1>
{% endif %}
{% if (entry.level == 1) %}
<h3><a href="{{ entry.link }}">{{ entry.cat }}</a></h3>
{% endif %}
{% endfor %}
Как видите выводим два блока с id 1 и 2 , и в каждом блоке выводим название и ссылку на категорию это то что обернуто в тег H1 и подкатегории они обернуты в тег H3 .

Всегда можно вывести через debugValue содержимое переменной или результат

Код:
{{ debugValue(getCategoryTree(2)) }}

Можешь почитать и вот эту статейку "Слайдер с функцией увеличения изображения"

Опрос

Ваше мнение

Какие темы вам интереснее?
Результаты

Последние комментарии

Теги

Anything in here will be replaced on browsers that support the canvas element

Статистика

  • Caйту: 4393 дня
  • Новостей: 566
  • Комменты: 257
  • Зарегистрированно : 662
  • Онлайн всего: [4]
  • Гости: [3]
  • Поисковики: [1] Google
  • Были сегодня : [3] Google, Яндекс, Яндекс
  • SQL запросов: 33
  • Генерация страницы: 0.744сек
  • Потребление памяти: 5.534 Mb 
  •   Яндекс.Метрика