Zum Inhalt springen

Menus wird auf der Startseite nicht dargestellt

Erstellt am 3. Juli 2007 · 2 Antworten · letzte Antwort am 3. Juli 2007

Tags: Frage

suit4 ·

Auf meiner Startseite werden meine Menüs nicht dargestellt, wenn ich innerhalb der Menüs den entrylevel=1 setze.

Setze ich entrylevel=0, sind die Menüs zu sehen, klappen aber nicht aus.

lib.mainMenu = COA
lib.mainMenu {
  10 = HMENU
  10.special = directory
  10.special.value = 70
  10.entryLevel = 1
  10 {
    1 = TMENU
    1 {
      expAll = 0
      wrap = <ul>|</ul>
      noBlur = 1
      NO = 1
      NO.wrapItemAndSub = <li class="first-child">|</li>|*|<li>|</li>|*|<li class="last-child">|</li>
      NO.stdWrap.htmlSpecialChars = 0
      ACT = 1
      ACT.wrapItemAndSub = <li class="first-child active">|</li>|*|<li class="active">|</li>|*|<li class="last-child active">|</li>
      ACT.stdWrap.htmlSpecialChars = 0
    }
    2 = TMENU
    2 {
      expAll = 0
      wrap = <ul>|</ul>
      noBlur = 1
      NO = 1
      NO.wrapItemAndSub = <li class="first-child">|</li>|*|<li>|</li>|*|<li class="last-child">|</li>
      NO.stdWrap.htmlSpecialChars = 0
      ACT = 1
      ACT.wrapItemAndSub = <li class="first-child active">|</li>|*|<li class="active">|</li>|*|<li class="last-child active">|</li>
      ACT.stdWrap.htmlSpecialChars = 0
    }
  }
}

Beide Menüs sind etwa gleich aufgebaut.

Seitenstruktur:

Home
--Primary Menu <- Einstiegspunkt erstes Menü
----Seite 1
------Seite 1.1
------Seite 1.2
----Seite 2
----Seite 3
------Seite 3.1
----Seite n

--Secondary Menu <- Einstiegspunkt zweites Menü
----Seite 1
----Seite 2
------Seite 2.1
------Seite 2.2
----Seite 3

ich hätte so gerne meine Menüs auf allen Seiten zu sehen UND funktional!
Wer weiss es besser??

suit4 ·

Danke, TobiasR

das ändert aber an der Tatsache nichts, dass die Menüs dann zwar auf der Startseite zu sehen sind, aber nicht mehr aufklappen.

Das ganze hat verhält sich - wie ich mittlerweile rausgefunden habe - etwas anders: wenn man (ich) denkt, dass der Directory-Modus die komplette Struktur unterhalb des Menü-Einstiegspunktes anzeigen würde, dann stimmt das nicht.

Andererseits kann der List-Modus das schon, also kann ich jetzt in meinem Menü eine Liste anlegen mit den PIDs, die ich gerne sehen würde, aber dann hat das ganze bald nichts mehr mit Content Management System zu tun, sondern wird relativ statisch.
Man stelle sich vor, der Kunde möchte gerne eine neue Seite innerhalb des Menüs anlegen, muss dazu dann aber noch irgendwo im TypoScript eine Seiten-ID einfügen. Viel Spaß damit, das geht in die Hose.

Mir ist eingefallen, dass ich vor einiger zeit genau dieses Problem schon einmal hatte. Mein damaliger Lösungsansatz war, eine Liste aller PIDs unterhalb einer bestimmten Seite (dem Einstiegspunkt für das Menü) zu generieren.

Ich bin da zum Glück auch nicht der einzige, der sich das beschrieben Verhalten vom Directory-Modus wünscht: http://bugs.typo3.org/view.php?id=3224

Wie man dort schön lesen kann, wird das ganze als Feature bezeichnet, von dem ich denke, dass es am Besten einen Parameter depth geben sollte, mit dem man dann die gewünschte Strukturtiefe des Directories einstellen kann.

OK, also Workaround:
mittels einer Condition wird zu gegebener Zeit der Entrylevel geändert, nämlich dann, wenn wir uns innerhalb der Menüstruktur befinden.
Dazu kommt folgender Code hinter das TS aus meiner Frage.

# @see http://bugs.typo3.org/view.php?id=3224
[PIDinRootline = 70]
    lib.mainMenu.special >
    lib.mainMenu.entryLevel = 1
[END]

Auf jeden Fall danke für die Hilfe!