Sitemap, dieses wunderbare alte Thema hat wohl schon einiges Leid unter die T3-Anfänger gebracht. auch ich war ein solcher Leidiger, denn trotz vieler völlig sinnvolloer tips wie "such doch mal im Forum" oder "les mal ein Tut" - so richtig schlau geworden bin ich dadurch eigentlich nicht.
Deswegen ein kleiner Erfahrungsbericht:
Folgende Zusammensetzung:
Root-Template, welches der Rootseite zugeordnet ist (das ist wichtig, damit später die Einstiegsseite richtig ist!!!)
Include static (from extensions):
css_styled_content
Include static:
content(default), styles.sitemap.text und styles.sitemap.text können wir vergessen, die haben unter css_styled_content eh nix zu melden.
Eine Seite, die die Sitemap nachher beheimaten soll, nennen wir sie mal sm-page.
Dann noch ein wunderschönes Extension Template für die sm-page.
Und ein Inhaltselement für die sm-page, nämlich vom Typ sitemap. Nicht vergessen dem guten Stück unter "Ausgangspunkt" eine Startpage zuzuordnen ;-)
Wer mal einen Blick in seine Typo3-Verzeichnisse im ganz normalen Dateisystem wirft, entdeckt unter dummy-3.7.0\typo3\ext\css_styled_content\static eine Datei mit dem namen setup.txt.
Und wer dann noch einen Blick hinein wirft, der stellt fest: Genau DAS ist der Ort, an dem die Ausgaben Konfiguriert werden, die css_styled_content später ausspuckt.
(Warum ich das nicht in der css_styled_content-Doku gefunden habe? Tja, keine Ahnung :o )
Die suche nach "sitemap" führt uns dann in die gegend um Zeile 883, in der die ausgabe für den Sitemp-Fall gebastelt wird.
# "Sitemap"
2 = HMENU
2.wrap = <div class="csc-menu csc-menu-2">|</div>
2 {
1 = TMENU
1.NO.allWrap = <p class="csc-sitemap csc-sitemap-level1">|</p>
1.NO.stdWrap.htmlSpecialChars = 1
1.target = {$content.pageFrameObj}
1.expAll = 1
2 < .1
2.NO.allWrap = <p class="csc-sitemap csc-sitemap-level2">|</p>
3 < .1
3.NO.allWrap = <p class="csc-sitemap csc-sitemap-level3">|</p>
4 < .1
4.NO.allWrap = <p class="csc-sitemap csc-sitemap-level4">|</p>
4.expAll = 0
}
Sehr schön.
Wir könnten jetzt anfangen in dieser Standard-Datei rumzusauen. Da wir ansändige Programmierer sind lassen wir das natürlich sein, denn es gibt die Möglichkeit in unserem frischen sm-page - ExtensionTemplate diesen ganzen Rotz zu überschreiben.
Zum beispiel so:
tt_content.menu.20 {
2 = HMENU
2.wrap = <div class="csc-menu csc-menu-2">|</div>
2 {
1 = TMENU
1.wrap = <ol class="li1">|</ol>
1.NO.allWrap = <li>|</li>
1.NO.stdWrap.htmlSpecialChars = 1
1.target = {$content.pageFrameObj}
1.expAll = 1
2 < .1
2.wrap = <ul class="li2">|</ul>
2.NO.allWrap = <li>|</li>
# 3 < .1
# 3.NO.allWrap = <p class="csc-sitemap csc-sitemap-level3">|</p>
# 4 < .1
# 4.NO.allWrap = <p class="csc-sitemap csc-sitemap-level4">|</p>
# 4.expAll = 0
}
}
Alternativ zum Überschreiben bleibt auch noch die möglichkeit, in einer passenden css-Datei die css-Klassen aus der Standard-Datei zu konfigurieren. Wenn das ausreicht um das vorgegebene Design-Ziel zu erreichen, sollte man das auch so tun.
Das wars.
Ich hoffe ich konnte das Leid ein bisschen lindern
😉
Bei Fragen fragen
Gruß Chris