Seitentitel (HTML title Tag) ändern
TYPO3 setzt den Titel einer Seite (HTML-Tag title) standardmäßig auf den Seitentitel der aktuellen Seite. Es gibt jedoch Fälle, bei denen es von Vorteil sein kann, zusätzliche Informationen im Titel anzugeben: Beispielsweise ist es aussagekräftiger, wenn eine Seite im Ergebnis einer Suchmaschine wie Google erscheint und der Titel dabei nicht nur 'Kontakt' sondern z.B. 'Winkelmann GmbH - Kontakt' lautet.
TypoScript: Seitentitel in TYPO3 ändern
1: # Seitentitel entfernen 2: config.noPageTitle = 1 3: page = PAGE 4: page { 5: # Neuen title Tag in headerData setzen 6: headerData { 7: 10 = TEXT 8: 10 { 9: field = title 10: noTrimWrap = |<title>Seitentitel: | - Text nach dem dynamischen Titel</title>| 11: } 12: } 13: }
Es gibt noch eine andere Möglichkeit, den Seitentitel zu ändern, indem Sie als Backend-Benutzer mit Administrator-Rechten im Modul "Web > Template" direkt das Feld 'Sitetitle' ausfüllen. Allerdings wird hierdurch nur ermöglicht, einen Text vor den eigentlichen Seitentitel zu bringen.
Wie man im obenstehenden Beispiel sieht, lässt sich durch den TypoScript-Code sowohl vor als auch nach dem eigentlichen Seitentitel ein Text platzieren. Ausserdem können Sie bei Bedarf auch ein anderes Datenbankfeld ('field') anzeigen lassen, indem Sie in Zeile 9 einfach die Angabe title durch einen anderen Wert ersetzen - z.B. subtitle, um den Untertitel der aktuellen Seite zu bekommen.
Die Angabe von noTrimWrap in Zeile 10 sorgt dafür, dass die Leerzeichen vor und nach dem eingefügten Seitentitel erhalten bleiben.
Weiterlesen
26.08.2011, 12:08
Jochen Fröhlich
29.08.2011, 17:08
ja, man kann über TypoScript auch auf andere Datenbankfelder zugreifen. Um den Untertitel als Seitentitel zu setzen, schreibt man z.B. statt "field = title" einfach "data = field : subtitle" (Beispiel oben, Zeile 9).
Auch Werte aus Extensions lassen sich zuweisen. Die Extension (z.B. "tx_myext_pi1") holt sich irgendeinen Wert aus der Datenbank, verarbeitet ihn und gibt ihn mit "return" zurück. Im TypoScript-Template von oben ersetzt man dann die Zeilen 7 bis 11 durch etwas wie:
10 = COA
10 {
# Extension gibt Seitentitel zurück
10 =< plugin.tx_myext_pi1
# Achtung: stdWrap!
stdWrap.noTrimWrap = |<title>Seitentitel aus Extension: | - Text danach</title>|
}
Viele Grüße,
Jochen
13.10.2011, 12:27
vielen Dank - war sehr hilfreich!
Eine sinnvolle Ergänzung für unsere Zwecke war noch die Ergänzung mit den Daten aus nav_title.
page = PAGE
page.headerData {
10 = TEXT
10 {
value = {page:nav_title//page:title}
insertData = 1
noTrimWrap = |Seitentitel: | - Text nach dem dynamischen Titel|
}
}
Nun wird der alternative Navigationstitel - so er gesetzt ist - als title tag verwendet.
Schöne Grüße!
sam
27.10.2011, 02:42
weil dort sonst "Home - Meine SeitenTitel..."
für die erste seite würde ich gerne nur "Mein Seiten Titel haben"
Jochen Fröhlich
10.01.2012, 21:06
um auf der Homepage einen anderen Seitentitel zu bekommen, würde ich eine TypoScript Condition verwenden und darin dann den Titel anders formatieren.
Zum Beispiel so etwas ans Ende Deines TS-Templates (nach der oben im Beispiel angegebenen Definition):
# angenommen, Homepage hat die ID 2
# (nur wegen Beispiel hier die ID direkt, sonst besser TypoScript-Konstanten verwenden!)
[globalVar = TSFE:id=2]
page.headerData.10.noTrimWrap >
[global]
Damit würde nur der im TYPO3 angegebene Seitentitel verwendet.
Nebenbei: Wenn Deine Homepage kein Shortcut ist, kannst Du als Bedingung auch [treeLevel = 0] verwenden.
Grüße
Jochen
Besucher fanden diese Seite unter folgenden Suchbegriffen: