Guten Morgen,
ich möchte folgendes erreichen.
Seitenstruktur (vereinfacht):
STARTSEITE
-STARTSEITE (Verweis)
-UNTERSEITE 1
-UNTERSEITE 2
Kurz gesagt möchte ich in meinem Hauptmenü einen Eintrag für die Startseite unterbringen. Ich habe dies auf 2 Wegen probiert:
- einmal wie oben skiziert mit einem Verweis in Ebene 1 auf die Startseite
- oder per Einbinden des Inhalts der Startseite auf der Seite in Ebene 1
Egal wie rum komme ich zu dem Problem, dass der Link zwar erscheint und funktioniert, die im TS definierten Eigenschaften für den ACTiven Menüpunkt aber natürlich nicht übernommen werden, was ja auch logisch ist, da die Seiten IDs unterschiedlich sind und beim ersten Aufruf der Seite eben die STARTSEITE und nicht der Verweis darauf (dessen Page ID im Menü verlinkt ist) aufgerufen wird.
lib.mainMenu.1 = TMENU
lib.mainMenu.1.NO {
allWrap = <li>|</li> || <li>|</li> || <li>|</li> || <li class="last">|</li>
}
lib.mainMenu.1.ACT = 1
lib.mainMenu.1.ACT {
allWrap = <li class="active">|</li> || <li class="active">|</li> || <li class="active">|</li> || <li class="active last">|</li>
}
Wie löse ich das nun am elegantesten? Ich kann ja prinzipiell entweder die Startseite ändern (geht das ohne jetzt per htaccess die "Verweis"-Startseite aufzurufen?) oder irgendwie die Startseite in Ebene 0 in das Menp integrieren (das übersteigt dann aber meine Kenntnisse mit Typo3 und alles was ich bisher probiert hab, geht nicht).
Danke 😉
Warum tauscht du STARTSEITE und STARTSEITE (Verweis) nicht einfach.
STARTSEITE (Verweis auf erste Unterseite)
-STARTSEITE
-UNTERSEITE 1
-UNTERSEITE 2
So würde dannn der ACT Status auch grifen.
Alternativ könntest du natürlich mit einer Condition das menü anpassen.
Also wenn die STARTSEITE (TREELEVEL = 0 ) aufgerufen ist, dann einfach den ersten Menüpunkt als "active" auszeichnen (auch wenn die Seite in Wirklichkeit nicht aufgerufen ist):
lib.mainMenu.1.NO.allWrap = <li class="active">|</li> || <li>|</li> || <li >|</li> || <li class="last">|</li>
Ich kenne deine Menüstruktur nicht, aber eigentlich müsste das option splitting auch wie folgt ausschauen:
allWrap = <li class="first">|</li> |*| <li class="mid">|</li> |*| <li class="last">|</li>
Viel Spass beim ausprobieren.
maik schrieb
Alternativ könntest du natürlich mit einer Condition das menü anpassen.
Um das zu präzisieren, die Condition sieht da so aus:
[treeLevel = 0]
lib.mainMenu.1.NO.allWrap = <li class="active">|</li> || <li>|</li> || <li >|</li> || <li class="last">|</li>
[global]
Sollte ich die Frage richtig verstanden haben, geht es nur darum, im FE die Startseite (root-Seite) im Menü so erscheinen zu lassen, als ob sie sich in der ersten Ebene des Seitenbaums befindet.
Dafür wäre kein Verweis notwendig und es ginge nach dem Schema:
lib.mainMenu = COA
lib.mainMenu {
wrap = <ul>|</ul>
10 = HMENU
10 {
special = list
special.value = [ ID der root-Seite ]
.......
}
20 < .10
20 {
special = directory
.......
}
}
P.S.:
Oder beispielsweise auf die Frage von evacu bezogen:
lib.mainMenu = COA
lib.mainMenu {
wrap = <ul id="mainMenu">|</ul>
10 = HMENU
10 {
special = list
special.value = 3
1 = TMENU
1 {
noBlur = 1
NO {
wrapItemAndSub = <li>|</li>
}
CUR = 1
CUR {
wrapItemAndSub = <li class="active">|</li>
doNotLinkIt = 1
ATagBeforeWrap = 1
linkWrap = <strong>|</strong>
}
}
}
20 < .10
20 {
special = directory
1 {
expAll = 1
NO {
wrapItemAndSub = |*||*| <li>|</li> || <li class="last">|</li>
}
ACT = 1
ACT {
wrapItemAndSub = |*||*| <li>|</li> || <li class="active last">|</li>
}
CUR {
wrapItemAndSub = |*||*| <li>|</li> || <li class="active last">|</li>
}
}
2 < .1
2 {
wrap = <ul>|</ul>
}
}
}
Ich muss übersehen haben, dass es hauptsächlich um ein Problem mit „ACT“ geht.
Wie auch immer – im Beispiel tritt das Problem erst gar nicht auf. Bei der Startseite nutze ich ja „CUR“. 😉