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

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

irbees2008 irbees2008 Опубликовано - 27 - декабря TWIG
1556 - 0
  • Автор: 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йту: 3324 дня
  • Новостей: 542
  • Комменты: 254
  • Зарегистрированно : 571
  • Онлайн всего: [5]
  • Гости: [4]
  • Поисковики: [1] Google
  • Были сегодня : [4] Яндекс, Google, selischev, irbees2008
  • SQL запросов: 33
  • Генерация страницы: 0.101сек
  • Потребление памяти: 4.948 Mb 
  •   яндекс.ћетрика