hi,
habt ihr einen konkreten tipp, wie ich je nach momentaner navigationsebene, sprich entryLevel ein unterschiedliches CSS einbinden kann?
also entryLevel = 0 soll anders aussehen als entryLevel = 1
gruß
hi,
habt ihr einen konkreten tipp, wie ich je nach momentaner navigationsebene, sprich entryLevel ein unterschiedliches CSS einbinden kann?
also entryLevel = 0 soll anders aussehen als entryLevel = 1
gruß
schon mal einen Blick in die Conditions geworfen?
treelevel ist das Stichwort... und die conditions findest Du (wie auch sonst vieles praktisches) in der tsref:
https://docs.typo3.org/m/typo3/reference-typoscript/main/en-us/Index.html
danke, ich muss eigentlich immer nur wissen, was ich suchen muss 😃 dann bin ich immer schon ein stück weiter 😃
nach deinen stichwörtern habe ich diese tipps gefunden:
// mit eckigen Klammern:
[treeLevel = 0]
page.20 = TEXT
page.20.value = Nur auf root-Ebene zu sehen
[end]
// mit if:
page.20 = TEXT
page.20.value = Nur auf root-Ebene zu sehen
page.20.if.value.data = level : 1
page.20.if.equals = 0
// aktuelle Ebene anzeigen - Zahl hinter level ist egal aber muss vorhanden sein !
page.30 = TEXT
page.30.data = level : 1
jetzt habe ich es gelöst mit folgendem script:
[treeLevel = 2]
seite.includeCSS {
file1 = fileadmin/template/main/css/layout2.css
file1.media = screen
file2 = fileadmin/template/main/css/style.css
file2.media = screen
}
[else]
seite.includeCSS {
file1 = fileadmin/template/main/css/layout.css
file1.media = screen
file2 = fileadmin/template/main/css/style.css
file2.media = screen
}
[end]
aber nur bis zum ersten aufruf, der 2te aufruf der aus dem cache kommt liefert mir wieder layout.css zurück und nicht layout2.css im treelevel 2
schaut doch gut aus ... cacheing Probleme gibts da eigentlich keine. Probier mal noch im ELSE Bereich zuvor das css zu löschen
seite.includeCSS >
Viele Grüße
Niki
leider bringt das keine abhilfe, wenn ich einen refresh mache oder andere seiten innerhalb treeLevel 2 aufrufe, bleibt alles in ordnung, nur sobald ich in treelevel 1 klicke und dann wieder zurück auf Level 2 gehe, bekomme ich wieder nur layout.css eingebunden.
ich habe auch diese variante noch probiert:
seite.includeCSS {
file1 = fileadmin/template/main/css/layout.css
file1.media = screen
file2 = fileadmin/template/main/css/style.css
file2.media = screen
}
[treeLevel = 2]
seite.includeCSS >
seite.includeCSS {
file1 = fileadmin/template/main/css/layout2.css
file1.media = screen
file2 = fileadmin/template/main/css/style.css
file2.media = screen
}
[end]
hm also am cache liegts nicht ... mach zum debuggen doch erst mal eine Textausgabe im Content und schau ob die treelevels richtig angezogen werden. CSS Pfade stimmen alle, nehme ich an?
Viele Grüße
Niki
die pfade zum css stimmen, sonst würden die layouts ja beim ersten aufruf nicht korrekt aufgerufen werden.
wie mache ich denn eine textausgabe vom treeLevel?
wie mache ich denn eine textausgabe vom treeLevel?
steht doch in deinem eigenen posting 😉
[treeLevel = 0]
page.20 = TEXT
page.20.value = Nur auf root-Ebene 0 zu sehen
[end]
gruss, fuss
achso ich dachte eigentlich daran den treeLevel auszugeben wie bei PHP ein echo $treeLevel ;D
naja jedenfalls stimmt das treeLevel der jeweiligen ebenen.
hier mal das ganze visualisiert
1
1.1
1.2
2
2.1
2.2
Das Webseitenlayout für 1.x und 2.x soll anders aussehen als das von 1 und 2
oben die methode setzt das auch (fast) korrekt um.
Beispiel: Cache ist gelöscht.
Ich klicke auf 2: layout.css wird geladen für die Hauptpunkte
Ich klicke auf 2.2 layout2.css wird geladen für die zweite navigationsebene.
Ich klicke auf 2.1: weiterhin alles in Ordung. Ich klicke wieder auf 2. weiterhin alles in Ordnung.
JETZT: Klicke ich wieder auf 2.2 oder 2.1 (ist egal auch 1.x) und es wird nur noch egal auf welchen seiten layout.css angezeigt sprich gerendert!
[/u]
Meine Baumstruktur:
/ROOT
/ROOT/HOME
/ROOT/ÜBER UNS
/ROOT/ÜBER UNS/VEREIN
[...]
bis auf weiteres glaube ich dass folgender code mein problem gelöst hat:
[treeLevel = 0,1]
seite.includeCSS >
seite.includeCSS {
file1 = fileadmin/template/main/css/layout.css
file1.media = screen
file2 = fileadmin/template/main/css/style.css
file2.media = screen
}
[end]
[treeLevel = 2]
seite.includeCSS >
seite.includeCSS {
file1 = fileadmin/template/main/css/layout2.css
file1.media = screen
file2 = fileadmin/template/main/css/style.css
file2.media = screen
}
[end]
mit der anderen methode hat er irgend ein problem sei es caching oder sonst was.
meine lösung schaltet irgendwie das caching aus, zumindest fehlt der hinweis am fuß der seite.
warum?