Guten Morgen,
ich möchte in einer Anpassung des Nova Templates die Hauptnavigation zeigeteilt darstellen, sodass zu jederzeit in Zeile 1 die Kategorie Level 1 dargestellt werden. Hierzu sollen dann in Zeile 2 der Navigation die Sub-Kategorien der aktuell aktiven Kategorien angezeigt werden.
| Kategorie 1 | Kategorie 2 | Kategorie 3 |
| Kategorie 1.1 | Kategorie 1.2 | Kategorie 1.3 |
Zur Ausgabe der Kategorien in Zeile 1 verwende ich aktuell folgenden Code, welcher auch genau das tut, was er soll:
Die Ausgabe der Sub-Kategorien in Zeile 2 bereitet Probleme, auch wenn ich bereits einen Plan für einen Workaround habe. Ich denke allerdings, dass mir hier einfach und fundamentaler Denkfehler im Wege steht, der zu Klären sein sollte.
Folgenden Code verwende ich hier für die Ausgabe:
Das Ergebnis sieht nun fälschlicherweise so aus:
| Kategorie 1 | Kategorie 2 | Kategorie 3 |
| Kategorie 1 | Kategorie 2 | Kategorie 3 |
| Kategorie 1.1 | Kategorie 1.2 | Kategorie 1.3 |
Frage:
1. Gibt es eine Dokumentation zu der Funktion get_category_array. Ich kann auch in Bezug auf smarty-Templates leider keine finden.
2. Ich nehme eigentlich an, dass die Funktion ein Array mit allen Kat. erstellen, die sich unterhalb von categroyID befinden, weshalb ich mit categoryID=0 richtigerweise alle Elemente direkt unterhalb der Wurzelkategorie erhalte. Wieso enthält {get_category_array categoryId=$activeID assign='sub_categories'} auch Elemente auf der selben Ebene wie auch schon im ersten Code-Snippet?
3. Es gibt eine Funktion get_category_parents. Gibt es auch etwas wie get_category_children? Wo kann ich eine Dokumentation zu diesen Funktionen finden?
Hinweis:
Die foreach-Schleife der der Kategorien Level 2 ist nicht innerhalb foreach-schleife der Kategorien Level 1 untergebracht und soll nach Möglichkeit auch nicht dort hin. Durch die Verwendung von $activeId sollte das auch nicht notwendig sein.
Über einen kurzen Hinweis der mich zurück auf den richtig Weg bringt wäre ich euch sehr dankbar.
Gruß Mike
ich möchte in einer Anpassung des Nova Templates die Hauptnavigation zeigeteilt darstellen, sodass zu jederzeit in Zeile 1 die Kategorie Level 1 dargestellt werden. Hierzu sollen dann in Zeile 2 der Navigation die Sub-Kategorien der aktuell aktiven Kategorien angezeigt werden.
| Kategorie 1 | Kategorie 2 | Kategorie 3 |
| Kategorie 1.1 | Kategorie 1.2 | Kategorie 1.3 |
Zur Ausgabe der Kategorien in Zeile 1 verwende ich aktuell folgenden Code, welcher auch genau das tut, was er soll:
Code:
{get_category_array categoryID=0 assign='categories'}
{foreach $categories as $category}
/*Kategorie-Elemente des Level 1 werden hier richtig ausgegeben*/
{/foreach}
Die Ausgabe der Sub-Kategorien in Zeile 2 bereitet Probleme, auch wenn ich bereits einen Plan für einen Workaround habe. Ich denke allerdings, dass mir hier einfach und fundamentaler Denkfehler im Wege steht, der zu Klären sein sollte.
Folgenden Code verwende ich hier für die Ausgabe:
Code:
/*$activeID enthält die Interne Nummer der aktuell aktiven Kategorie.*/
{get_category_array categoryId=$activeID assign='sub_categories'}
{foreach $sub_categories as $sub}
/*Hier werden nicht nur die Sub-Kategorien sondern AUCH die Kategorien des Level 1 erneut ausgegeben/*
{/foreach}
Das Ergebnis sieht nun fälschlicherweise so aus:
| Kategorie 1 | Kategorie 2 | Kategorie 3 |
| Kategorie 1 | Kategorie 2 | Kategorie 3 |
| Kategorie 1.1 | Kategorie 1.2 | Kategorie 1.3 |
Frage:
1. Gibt es eine Dokumentation zu der Funktion get_category_array. Ich kann auch in Bezug auf smarty-Templates leider keine finden.
2. Ich nehme eigentlich an, dass die Funktion ein Array mit allen Kat. erstellen, die sich unterhalb von categroyID befinden, weshalb ich mit categoryID=0 richtigerweise alle Elemente direkt unterhalb der Wurzelkategorie erhalte. Wieso enthält {get_category_array categoryId=$activeID assign='sub_categories'} auch Elemente auf der selben Ebene wie auch schon im ersten Code-Snippet?
3. Es gibt eine Funktion get_category_parents. Gibt es auch etwas wie get_category_children? Wo kann ich eine Dokumentation zu diesen Funktionen finden?
Hinweis:
Die foreach-Schleife der der Kategorien Level 2 ist nicht innerhalb foreach-schleife der Kategorien Level 1 untergebracht und soll nach Möglichkeit auch nicht dort hin. Durch die Verwendung von $activeId sollte das auch nicht notwendig sein.
Über einen kurzen Hinweis der mich zurück auf den richtig Weg bringt wäre ich euch sehr dankbar.
Gruß Mike
Zuletzt bearbeitet: