Title-Tag abhängig von der Seitensprache setzen

In Typo3 wird standardmäßig der Webseiten-Titel und der Seitentitel in den Titel-Tag () generiert. Somit erhält man einen Seitentitel, der so aussehen könnte:

PC-Erfahrung.de: Anleitungen

Da der Title-Tag für Suchmaschienen sehr wichtig ist, sollte man den Title-Tag an die eigenen Bedürfnisse angepasst werden. In diesem Artikel wird beschrieben, wie man den Title-Tag für die eingerichteten Seitensprachen einrichtet. Das Ziel ist es also, beispielsweise einen englischsprachigen Titel zu generieren, wenn der Leser die Seitensprache auf Englisch umstellt.

Voraussetzungen

Diese Anleitung kann natürlich nur dann funktionieren, wenn man eine oder mehrere Seitensprachen installiert hat. Außerdem müssen auch englischsprachige Inhalte existieren.

Irgendwo im Typo3-Setup müsste also Folgendes zu finden sein.

### Mehrsprachigkeit ###
config.linkVars = L
config.sys_language_uid = 0
config.language = de
    [globalVar = GP:L=1]
    config.sys_language_uid = 1
    config.language = en
    [global]
config.locale_all = de_DE

In diesem Beispiel wurde neben Standard-Sprache Deutsch die englische Seitensprache als zweite Seitensprache eingerichtet.

Title-Tag konfigurieren

Bevor der Title-Tag individuell eingerichtet werden kann, muss der Standard-Title-Tag deaktiviert werden. Dies wird mittels folgendem Eintrag erreicht:

config.noPageTitle = 2

Nach Setzen dieses Eintrags wird kein Title-Tag mehr generiert. Es ist nun erforderlich, die gewünschten Texte und Informationen festzulegen:

seite.headerData.1 = COA
seite.headerData.1.wrap = <title>|</title>
seite.headerData.1.1 = TEXT
seite.headerData.1.1.value = PC-Erfahrung.de
seite.headerData.1.2 = TEXT
seite.headerData.1.2.value = &#32;-&#32;
seite.headerData.1.3 = TEXT
seite.headerData.1.3.data = field:title

Kurze Erklärung: Es wird ein COA-Objekt definiert, damit mehrere Text- und Data-Objekte genutzt werden können. seite.headerData.1.1 definiert den Text PC-Erfahrung.de, seite.headerData.1.2 den Trennungsstrich ( ist der ASCII-Code für das Leerzeichen.) und seite.headerData.1.3 liest den Seitentitel aus der Datenbank. Wir erhalten nun folgenden Title-Tag:

PC-Erfahrung.de - Anleitungen

Nun kommen wir zu dem Punkt der Mehrsprachigkeit. Dazu arbeiten wir mit Global-Vars:

seite.headerData.1 = COA
seite.headerData.1.wrap = <title>|</title>
seite.headerData.1.1 = TEXT
seite.headerData.1.1.value = PC-Erfahrung.de
[globalVar = GP:L=1]
seite.headerData.1.1 = TEXT
seite.headerData.1.1.value = PC-Experience.com
[global]
seite.headerData.1.2 = TEXT
seite.headerData.1.2.value = &#32;-&#32;
seite.headerData.1.3 = TEXT
seite.headerData.1.3.data = field:title

Der zusätzliche eintrag steht für folgende Bedingung: "Wird eine englischsprachige Seite aufgerufen, so überschreibe den Inhalt mit dem Inhalt innerhalb von globalVar

Beim Aufruf einer englischsprachigen Seite erhalten wir also folgenden Title - Tag:

PC-Experience.com - HowTo's

Achtung: globalVars darf nicht innerhalb von geschweiften Klammern auftreten, daher muss man in diesem Fall etwas mehr Schreibarbeit in Kauf nehmen. Innerhalb von seite {...} würde globalVars Fehler produzieren.