Výpis hierarchického menu z výčtových zdrojů

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, který je obsažený v této sekci a má systémový název menu.

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="{value(target(node), link(node)}">{node.title}</a>
  {if isParent(node, _primary)}
    {while node.menu}
    {whilefirst}<ul>{/whilefirst}
      {_template mode="node" node=_.asset}
    {whilelast}</ul>{/whilelast}
    {/while}
  {/if}
</li>