Výpis hierarchického menu dotazovým zdrojem
Předpokládáme, že _template.root_menu
je výčtový datový zdroj obsahující první úroveň menu.
Výpis je rekurzivní, při opakovaném volání šablony v režimu node
se mění parametr reprezentující aktuální sekci (pojmenovaný také node
).
Vždy se vypíše odkaz na tuto sekci, a pokud je tato sekce předkem aktuální sekce, vypíšo se všechny její podsekce. K tomu se volá iterace přes zdroj _template.menu_source
, což musí být dotazový zdroj, který vrací podsekce zadané sekce.
Fragmenty kódu
Defaultní režim šablony
<ul>
{while _template.root_menu}
{_template mode="node" node=_.asset}
{/while}
</ul>
Režim "node"
<li>
<a href="{link(node)}">{node.title}</a>
{if isParent(node, _primary)}
{while _template.menu_source folder=node}
{whilefirst}<ul>{/whilefirst}
{_template mode="node" node=_.asset}
{whilelast}</ul>{/whilelast}
{/while}
{/if}
</li>