entryLevel=1, nur den "aktiven" Pfad anzeigen?! wurde Beantwortet

Autor Nachricht
Verfasst am: 14.11.2007 [12:41]
JayR

[Themenersteller]
dabei seit: 07.11.2004
Beiträge: 156

Hallo zusammen,

vielleicht steh ich grad nur auf dem Schlauch und die Lösung ist ganz einfach, aber ich komm einfach nicht drauf.

Ich habe folgende, vereinfachte Menüstruktur:

- ROOT
-- Startseite
-- Menüpunkt1
--- Sub1
--- Sub2
-- Menüpunkt2

Nun werden die Hauptmenüpunkte (Level1) horizontal angezeigt:

Startseite | Menüpunkt1 | Menüpunkt2

Als Submenü soll der aktive Menüpunkt inkl. der Unterseiten angezeigt werden. Wenn also Menüpunkt1 oder einer seiner Untermenüs aktiv ist, soll das Submenü wie folgt aussehen:

- Menüpunkt1
-- "Sub1" (aktiv)
-- Sub2

Mit folgendem Code werden auch alle anderen Menüpunkte auf der Ebene mit angezeigt, dann sieht es wieder so aus.

- Startseite
- Menüpunkt1
-- Sub1
-- Sub2
- Menüpunkt2

Typoscript:Zeilennummerierung:  An / Aus

  1. lib.sub = HMENU
  2. lib.sub {
  3.   entryLevel = 1
  4.  
  5.   1 = TMENU
  6.   1.wrap = <ul>|</ul>
  7.   1.noBlur = 1
  8.  
  9.   1.NO = 1
  10.   1.NO {
  11.     allWrap = <li class="level1">|</li>
  12.     ATagBeforeWrap = 1
  13.   }
  14.  
  15.   1.RO = 1
  16.   1.RO < .1.NO
  17.  
  18.   1.ACT = 1
  19.   1.ACT < .1.NO
  20.   1.ACT.allWrap = <li class="level1_act">|</li>
  21.  
  22.   2 < .1
  23.   2.wrap = |
  24.   2.NO.allWrap = <li class="level2">|</li>
  25.   2.ACT.allWrap = <li class="level2_act">|</li>
  26. }


Soweit ist das ja auch alles in Ordnung. Nur wie kann ich dem Menü sagen, dass NUR der aktive Pfad angezeigt wird und nicht alle Menüpunkte des ersten Levels????

Ich habe schon mit expAll und collapse rumgespielt. Allerdings ohne Erfolg...

Vielen Dank im Voraus.
Gruß Jan
Verfasst am: 14.11.2007 [13:03]
friction48


dabei seit: 02.12.2003
Beiträge: 213

Hi,

wenn du den "entryLevel" erhöhst (auf 2) sollten nur die Unterpunkte (sub1,sub2) stehen bleiben. Um auch noch den Hauptmenüpunkt angezeigt zu bekommen, muss das lib.sub vom Typ "COA" sein. An Position 10 kannst du dir dann den Titel des Hauptmenüpunktes anzeigen lassen. Und an Position 20 dein bisheriges Menü.

Also ungfähr so:

Typoscript:Zeilennummerierung:  An / Aus

  1. lib.sub = COA
  2. lib.sub{
  3.   10 = TEXT
  4.   10{
  5.     # Den Wert (1) musst du eventuell anpassen
  6.     data = leveltitle : 1
  7.     wrap = <h1>|</h1>
  8.   }
  9.   20 = HMENU
  10.   20 {
  11.     entryLevel = 2
  12.  
  13.     1 = TMENU
  14.     1.wrap = <ul>|</ul>
  15.     1.noBlur = 1
  16.  
  17.     1.NO = 1
  18.     1.NO {
  19.       allWrap = <li class="level1">|</li>
  20.       ATagBeforeWrap = 1
  21.     }
  22.  
  23.     1.RO = 1
  24.     1.RO < .1.NO
  25.  
  26.     1.ACT = 1
  27.     1.ACT < .1.NO
  28.     1.ACT.allWrap = <li class="level1_act">|</li>
  29.    
  30.     2 < .1
  31.     2.wrap = |
  32.     2.NO.allWrap = <li class="level2">|</li>
  33.     2.ACT.allWrap = <li class="level2_act">|</li>
  34.   }
  35. }
icon_biggrin.gif

TYPO3-Typoscript-Snippets und Tutorials auf www.l-base.de
Verfasst am: 14.11.2007 [13:29]
JayR

[Themenersteller]
dabei seit: 07.11.2004
Beiträge: 156

Super!!! Vielen Dank!
Genau das ist es!!!

Gruß Jan
Verfasst am: 16.05.2008 [19:22]
harry7922

dabei seit: 21.04.2006
Beiträge: 97


Hallo Zusammen!

Ich füge mein Problem an diesen Thread an, da es sich auf das gleich Problem bezieht.

Mein Seitenaufbau sieht folgendermassen aus:

- ROOT
-- Startseite
-- Menüpunkt1
--- Sub1
----Untersub1
----Untersub2
--- Sub2
----Untersub3
----Untersub4
-- Menüpunkt2
...

Ich habe auch die Ebene 1 als horizontales Menü
also so: Startseite - Menüpunkt1 - Menüpunkt2

Und möchte in einem extra Menü (TMENU) die Sub und Untersub Seiten des aktiven Menüpunkts der Ebene1 anzeigen lassen.

Also wenn bspw. Menüpunkt1 aus dem horizontalen Menü gewählt wurde, dann soll er mir das andere Menü folgendermassen darstellen:
--- Sub1
--- Sub2

und wenn dann aus diesem Menü die Seite "Sub2" gewählt wurde soll es so aussehen:

--- Sub1
--- Sub2
----Untersub3
----Untersub4

Hebe schon einen Code, der allerdings nur funktioniert, wenn das special.value gefüllt ist -> dadurch werden alle Menüpunkte angezeigt.
Wenn ich das special.value weglasse macht das Menü ganz komische Sachen.



Typoscript:Zeilennummerierung:  An / Aus

  1. # Menu links erstellen - EBENE1
  2.        subparts.MENU_LINKS = HMENU
  3.        subparts.MENU_LINKS {
  4.         special = directory
  5.         special.value = 2
  6.         entryLevel = 1
  7.         1 = TMENU
  8.         1 {
  9.                 noBlur = 1
  10.                 wrap = <ul>|</ul>
  11.                 NO = 1
  12.                 NO {
  13.                       ATagTitle.field = abstract // description // title
  14.                         wrapItemAndSub = <li>|</li>
  15.                 }
  16.                 CUR < .NO
  17.                 CUR.doNotLinkIt = 1
  18.         }
  19.         2 < .1
  20.         3 < .1
  21.         }



Bitte um einen Tipp und bin für jeden Vorschlag dankbar!!

Vielen Dank schon mal!!!

Grüße Hardy

Verfasst am: 17.05.2008 [10:57]
harry7922

dabei seit: 21.04.2006
Beiträge: 97


Danke Leute, hab es selber gelöst.

Einfach das "special" weglassen:
Typoscript:Zeilennummerierung:  An / Aus

  1. # Menu links erstellen
  2.        subparts.MENU_LINKS = HMENU
  3.        subparts.MENU_LINKS {
  4.         entryLevel = 2
  5.         1 = TMENU
  6.         1 {
  7.                 noBlur = 1
  8.                 wrap = <ul>|</ul>
  9.                 NO = 1
  10.                 NO {
  11.                       ATagTitle.field = abstract // description // title
  12.                         wrapItemAndSub = <li>|</li>
  13.                 }
  14.                 CUR < .NO
  15.                 CUR.doNotLinkIt = 1
  16.         }
  17.         2 < .1
  18.         3 < .1
  19.         }






 
TYPO3 Version 4.2.0 testen

TYPO3 Ver. 4.2.0 testen

Testen Sie die neue TYPO3 Version 4.2.0 kostenlos für einen Monat

TYPO3 Bücher

TYPO3 Workshops


TYPO3 Einführungsschulung
in Berlin:
Montag, 07.07.
in Espelkamp:
Montag, 04.08.

TYPO3 Intensivschulung
in Espelkamp:
Mi., 06.08. - Fr., 08.08.
in Würzburg:
Mo., 18.08. - Mi., 20.08.
in Köln:
Mo., 01.09. - Mi., 03.09.
in Berlin:
Mi., 24.09. - Fr., 26.09.

TYPO3 Extensionschulung
in Berlin:
Mo., 14.07. - Mi., 16.07.
in Espelkamp:
Mo., 11.08. - Mi., 13.08.