Search the FirstSpirit Knowledge Base
Hallo,
Wenn man Navgigationspunkte in der Navigation unsichtbar in der Navigation setzt, gilt das automatisch für alle tieferliegenden
Ebenen auch, d.h. es wird hierfür keine Navigation erzeugt.
Gibt es eine Möglichkeit, es möglichst einfach zu umgehen (Hintergrund ist eine Anforderung, in der genau solches passieren soll..)
Die Navigationsfunktionen für Toplevel-Navigation und DTN sind dabei getrennt..
Ich habe schon überlegt, ob man mit Strukturvariablen etwas erreichen kann, habe aber das dumpfe Gefühl, daß es ein ganz schönes Gefuddel mit
Scripting und Navigationsfunktion gibt..
Wenn jemand eine Idee hat..
Gruß,
Michael
Hallo Michael,
wenn es keine Sitemap in dem Projekt gibt (oder in der Sitemap alles dargestellt werden soll), dann kannst Du einfach die Sitemap zweckentfremden. Die Navigation "ganz normal" definieren und einfach <CMS_PARAM name="siteMap" value="1"/> hinzufügen. Das bewirkt dann, dass der Haken "Navigationsmenü in Übersicht (Sitemap) anzeigen?" anstelle von "Im Navigationsmenü anzeigen=?" ausgewertet wird.
Der nächste Ansatzpunkt wäre es, wenn man die Ordner über einen Metadateneintrag auf "nicht anzeigen" setzt. Dann muss man natürlich in der Navigation abfragen, ob der aktuelle Ordner dargestellt werden soll oder nicht (#nav.folder.meta("...","inherit"))
Ansonsten kann man natürlich "ganz normal" im FirstSpirit Template sich zum Beispiel den aktuellen Ordner holen und über dessen Kinder iterieren. Die Sichtbaren sollen dann angezeigt werden:
$CMS_FOR(folder,#global.node.parent.getChildren(#global.node.parent.class))$
$CMS_IF(folder.getFolderLangSpec(#global.language).isVisible())$
<Navigationspunktausgabe>
$CMS_END_IF$
$CMS_END_FOR$
Hier wird es alllerdings etwas unangenehm, wenn man geerbte Strukturvariablen benötigt, da man diese sich selber holen muss (iteration bis zur Struktur-Wurzel).
Gegebenenfalls kann ich Dir hier auch ein Beispiel geben...
Wenn keine der Lösungen ausreichend ist, beschreibe bitte nochmal genau, was Du wann wo brauchst
Viele Grüsse aus Dortmund,
Holger
Hallo Michael,
wenn es keine Sitemap in dem Projekt gibt (oder in der Sitemap alles dargestellt werden soll), dann kannst Du einfach die Sitemap zweckentfremden. Die Navigation "ganz normal" definieren und einfach <CMS_PARAM name="siteMap" value="1"/> hinzufügen. Das bewirkt dann, dass der Haken "Navigationsmenü in Übersicht (Sitemap) anzeigen?" anstelle von "Im Navigationsmenü anzeigen=?" ausgewertet wird.
Der nächste Ansatzpunkt wäre es, wenn man die Ordner über einen Metadateneintrag auf "nicht anzeigen" setzt. Dann muss man natürlich in der Navigation abfragen, ob der aktuelle Ordner dargestellt werden soll oder nicht (#nav.folder.meta("...","inherit"))
Ansonsten kann man natürlich "ganz normal" im FirstSpirit Template sich zum Beispiel den aktuellen Ordner holen und über dessen Kinder iterieren. Die Sichtbaren sollen dann angezeigt werden:
$CMS_FOR(folder,#global.node.parent.getChildren(#global.node.parent.class))$
$CMS_IF(folder.getFolderLangSpec(#global.language).isVisible())$
<Navigationspunktausgabe>
$CMS_END_IF$
$CMS_END_FOR$
Hier wird es alllerdings etwas unangenehm, wenn man geerbte Strukturvariablen benötigt, da man diese sich selber holen muss (iteration bis zur Struktur-Wurzel).
Gegebenenfalls kann ich Dir hier auch ein Beispiel geben...
Wenn keine der Lösungen ausreichend ist, beschreibe bitte nochmal genau, was Du wann wo brauchst
Viele Grüsse aus Dortmund,
Holger
Hallo Holger,
Es hilft mir schon weiter: mit dem Sitemap-Parameter möchte ich vorsichtig sein, da ich in dem sehr umfangreichen Projekt nicht sicher bin, ob es Nebenwirkungen gibt.und auf einmal Menüpunkte auftauchen, die vorher versteckt waren.
Ich teste mal Ansatz 2 aus.
Danke schonmal & Gruß,
Michael