|
Smarty
WARNING: All discussion is moving to https://reddit.com/r/smarty, please go there! This forum will be closing soon. |
|
View previous topic :: View next topic |
Author |
Message |
asff Smarty Rookie
Joined: 03 Feb 2014 Posts: 6
|
Posted: Mon Feb 03, 2014 11:01 am Post subject: Anfänger: Menu-Ausgabe nur active |
|
|
hi,
bin dabei mir ein template zu erstellen,
nun beim menu angelangt.
das hauptmenu funktioniert so wie ich möchte, und gibt nur level 1 vom menu aus. gut.
es gibt noch eine extra box. diese gibt alle menupunkte aus.
level1 active
level1.1
level1.2
...
level2
level3
...
ich möchte allerdings dass immer nur -> der level 1 active und dessen unterpunkte ausgegeben werden.
sodass man in der hauptnavi level2 wählt, und links im anderen menu den inhalt bekommt.
habe durch lange suche leider noch keine entsprechende lösung gefunden.
im moment werden hiermit alle menupunkte ausgegeben wie oben beschrieben
Quote: |
<ul>
{foreach name=aussen item=module_data from=$_categories}
<li id="box-categories-categorie-{$module_data.categories_id}" class="level{$module_data.level}{if $module_data.active} active{/if}"><a href="{$module_data.categories_link}">{$module_data.categories_name}</a></li>
{/foreach}
</ul>
|
|
|
Back to top |
|
Grizzly Smarty Pro
Joined: 15 Apr 2011 Posts: 172 Location: Germany
|
Posted: Wed Feb 05, 2014 8:21 am Post subject: |
|
|
Versteh ich dich da gerade richtig? Du willst dass im Menü alle Einträge kommen die auf der selben Ebene sind (Menüpunkt 1, Menüpunkt 2, Menüpunkt3) + Alle unmittelbar darunter liegenden Menüpunkte des aktuellen Knoten, Menüpunkt 1.1, Menüpunkt 1.2, Menüpunkt 1.3 aber nicht Menüpunkt 2.1 usw.?
Also z. B.
Menü 1 (active)
- Menü 1.1
- Menü 1.2
- Menü 1.3
Menü 2
- Menü 2.1 (nicht sichtbar)
- Menü 2.2 (nicht sichtbar)
Menü 3
Ist es das was du realisieren willst? |
|
Back to top |
|
asff Smarty Rookie
Joined: 03 Feb 2014 Posts: 6
|
Posted: Wed Feb 05, 2014 3:22 pm Post subject: |
|
|
Hallo,
mir ist gestern beim stylen des Menüs noch aufgefallen, dass es eigentlich ambesten wäre wenn die Ausgabe wie folgt wäre:
Code: |
<ul>
<li class"active"><a>Menu1</a>
<ul>
<li class="active"><a>Menu1.1</a>
<ul>
<li>Menu1.1.1</li>
</ul>
</li>
<li>Menu1.2</li>
<li>Menu1.3</li>
</ul>
</li>
<li>Menu2</li>
<li>Menu3</li>
</ul>
|
Zumal aber Menü2, Menü3 und/oder weitere Menü4. etc solange sie nicht aktiv sind, nicht ausgegeben werden sollen.
..die Ausgabe für nur die top_category wäre
Code: | <ul>
{foreach name=aussen item=module_data from=$_categories}
{if $module_data.top_category == 1}
<li id="box-categories-categorie-{$module_data.categories_id}" class="level{$module_data.level}{if $module_data.active} active{/if}"><a href="{$module_data.categories_link}">{$module_data.categories_name}</a></li>
{/if}
{/foreach}
</ul>
|
Wenn es jetzt noch möglich wäre nur die jeweils aktive Categorie auszugeben müsste man ja nur hinters {/foreach} <ul> und hier die entsprechende Zeile für die Ausgabe der level 2 Categorie schreiben..
zumal wenn man die Zeile für Categorie level 2 kennt sich die Zeile für level 3 logisch ergeben müsste..
konnte allerdings noch nix entsprechendes finden.. |
|
Back to top |
|
U.Tews Administrator
Joined: 22 Nov 2006 Posts: 5068 Location: Hamburg / Germany
|
Posted: Wed Feb 05, 2014 7:07 pm Post subject: |
|
|
Schaue Dir mal das Beispiel zum {function} tag an.
Siehe http://www.smarty.net/docs/en/language.function.function.tpl
Das Beispiel zeigt wie man ein rekursives Menu mit beliebig vielen Ebenen realisiren kann.
Du müsstest nur an entsprechender Stelle Deine active Abfrage einbauen.
Vielleicht hilft es Dir ja weiter. |
|
Back to top |
|
asff Smarty Rookie
Joined: 03 Feb 2014 Posts: 6
|
Posted: Fri Feb 14, 2014 7:32 am Post subject: |
|
|
Vielen Dank für den Hinweis,
habe mich nun allerdings doch, unabhängig davon entschlossen die Standard-Navi zu benutzen, da eine weitere Haupt-Navi wegfällt.
Aber mal schauen, vielleicht ergibt sich ja doch noch eine Frage im Laufe der Entstehung.
Danke soweit! |
|
Back to top |
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|