Include navbaru mezi více stránek

DrakMC
Člen | 35
+
0
-

Ahoj, zajímá mě, jak udělat efektivně include navbaru na více stránek tak, abych ho nemusel psát do každého .latte souboru. Napadlo mé ho dát rovnou do hlavní šablony @layout.latte, ale nebylo by to možné, jelikož potřebuji nějaké odkazy mít aktivní, když jsem zrovna na určené stránce. Případně mám vložit navbar do @layout.latte a části s odkazy na různé stránky do ostatních .latte souborů?

emololftw
Člen | 81
+
0
-

Ja to resim ze mam traitu MenuTemplate, kde vytvarim komponentu s menu a veskerou logiku mam uvnitr komponenty. Pokud chces mit nejakou active tridu na urcite polozce menu, tak pokud vykreslujes jednotlive prvky foreachem, kontroluj na prvku $presenter->isLinkCurrent() (omlouvam se, ze netaguji kod, pisu z mobilu)

netteman
Člen | 122
+
+1
-

Nebo třeba takto

v @layout.latte

    {if isLinkCurrent('Homepage:default')}
        <span>Homepage</span>
    {else}
        <a href="{link Homepage:default}">Homepage</a>
    {/if}

    {if isLinkCurrent('Kosik:default')}
        <span>Kosik</span>
    {else}
        <a href="{link Kosik:default}">Košík</a>
    {/if}

kromě {if} a {link} jde použít n:atributy https://latte.nette.org/cs/syntax#…

Editoval netteman (24. 12. 2021 16:35)

DrakMC
Člen | 35
+
0
-

Díky, vyřeším to if else. :)