[TYPO3-german] Menü aus Sysfolder mit Unterseiten erzeugen
JoH asenau
info at cybercraft.de
Wed Mar 28 14:12:08 CEST 2007
> ich habe folgendes Problem: es soll ein Menü erzeugt werden aus
> Seiten, die in einem Sysfolder liegen. Der Sysfolder befindet sich
> eine Ebene tiefer als die Rootseite.
> Das Menü wird derzeit erzeugt mittels:
>
> 10.special = directory
> 10.special.value = ID des Sysfolders
>
> Klappt auch, nur mit einem Haken: die Unterseiten der
> Navigationspunkte werden nicht angezeigt, sprich: das Menü wird bei
> Aktivieren eines der oberen Punkte nicht aufgeklappt.
> Ich habe inzwischen festgestellt, dass dies daran liegt, dass die
> Erzeugung eines Menüs mittels "special=directory" eigentlich nur für
> die "Oberseiten" gedacht ist.
>
> Seltsamerweise verhält sich das aber inkonsistent: liegt nämlich die
> Einstiegsseite des so erzeugten Menüs im rootlevel, dann klappt es
> tadellos. Liegt sie aber "eins tiefer", dann geht's nicht mehr.
> Dabei werden die Unterseiten "ausgeklappt", wenn man expAll=1 setzt.
> Aber das führt leider dazu, dass die Unterseiten alle gleichzeitig
> ausgeklappt sind - und das ist nicht gewünscht.
>
> Das Problem ist auch bereits als bug bekannt:
> http://bugs.typo3.org/view.php?id=3224
Dennoch ist es kein Bug sondern ein Feature, das auch relativ einfach zu
erklären ist:
Man kann sowohl für "directory" als auch für "list" eine kommaseparierte
Liste angeben, die uids beliebiger Seiten enthalten kann.
Der Unterschied liegt dabei lediglich darin, daß "list" die angegebenen
Seiten selbst mit einschließt, während "directory" nur deren Unterseiten
ausgibt.
Diese beliebigen Seiten stammen aber nicht zwingend aus ein und der selben
Ebene und genau da beißt sich die Katze in den Schwanz.
Rein theoretisch wäre es für Deinen Fall OK, auch die Unterseiten
automatisch aufklappen zu lassen.
Bei der gleichzeitigen Darstellung von Seiten aus verschiedenen Ebenen ginge
das aber nur bedingt.
Daß das Feature "expAll" trotzdem funzt, ist klar, weil dort unabhängig von
der aktuellen Position einfach alles dargestellt wird.
Das nur als Erklärung dafür, warum dieses Verhalten korrekt, so geplant und
eben kein Bug ist.
Im Bug Report ist übrigen ein Workaround mit einer Condition
[PIDinRootline], der mit entryLevel arbeitet, sobald man sich unterhalb der
angegebenen Seite befindet.
Das funktioniert bei Dir deswegen nicht, weil Du einen sysfolder verwendest.
Änder das mal in eine Seite vom Typ "not in menu". Dann sollte es gehen.
HTH
Joey
--
Wenn man keine Ahnung hat: Einfach mal Fresse halten!
(If you have no clues: simply shut your gob sometimes!)
Dieter Nuhr, German comedian
openBC/Xing: http://www.cybercraft.de
T3 cookbook: http://www.typo3experts.com
More information about the TYPO3-german
mailing list