Формирование разных меню с единым источником данных

Администрование При формировании навигации сайта может возникнуть желание сформировать несколько разных меню, используя одну «Карту сайта». «Карту сайта» (или просто одного из разделов) при этом разумно оформить в виде ненумерованного списка на корневой странице Группы. Этом случае хлебные крошки сформируются автоматически. Как сделать так, чтобы из одной «Карты сайта» можно было сделать несколько вариантов меню, например одновременно и боковое, и выпадающее из верхней навигации?

Итак, составим такую «Карту сайта», к примеру для группы Group:

* [[Base|+]] [[#map]]
** [[Go|+]]
* [[Content|+]] 
* [[Admin|+]] 
* [[Developer|+]] 
[[#mapend]]
(:ifend:)

Сектор нужен для того, чтобы делать (:include:) этой карты в других частях макета.

Чтобы успешно протранслировать созданную структуру в выпадающее меню навигации, нам нужно сделать буллеты второго уровня вложенности (**), поскольку в том меню они сверстаны именно так. Следите:

*{$$level} {$$class} [[Base|+]] [[#map]]
**{$$level} [[Go|+]]
*{$$level} [[Content|+]] 
*{$$level} [[Admin|+]] 
*{$$level} [[Developer|+]] 
[[#mapend]]

Мы добавили переменную {$$level}, которая позволит сделать необходимое вот так:

Include в верхнем меню: добавляем к нему еще один уровень вложенности и новый класс:
(:include Group/Group#map level="*" class="%apply=list myClass%":)

Почти всё хорошо, только вот на странице Group карта теперь выглядит вот так:

  • {$$level} {$$class} Ссылка

Не проблема — сделаем ее скрытой, и вызовем также через include:

(:if false:)
Это общее меню для левой, верхней и корневой навигации.
*{$$level} {$$class} [[Base|+]] [[#map]]
**{$$level} [[Go|+]]
*{$$level} [[Content|+]] 
*{$$level} [[Admin|+]] 
*{$$level} [[Developer|+]] 
[[#mapend]]
(:ifend:)
(:include Group/Group#map:)

Задача решена, спасибо за внимание.