069 37306888 Anfahrt

Menü

TYPO3 mit hreflang versehen

Was genau bewirkt hreflang ?

Das hreflang-Tag dient in erster Linie dazu, Suchmaschinen über anderssprachige Versionen einer Seite zu informieren. Zu diesem Zweck wird für jede Sprachversion ein Eintrag im <body>-Tag der Seite ausgegeben, aus der ersichtlich ist, um welche Sprache es sich jeweils handelt und wo(URL) diese Seite zu finden ist.

Bsp.:

Es existiert eine Seite "Über uns":

  • in deutscher Sprache unter www.xyz.de/ueberuns.html
  • und in englischer Sprache unter www.xyz.de/en/aboutus.html

Dann müssen im Quellcode der beiden Seiten folgende Einträge zu finden sein:

<link rel="alternate" hreflang="en" href="https://www.wacon.de/en/aboutus.html" />
<link rel="alternate" hreflang="de" href="https://www.wacon.de/ueberuns.html" />

Auf diese Weise werden die Seiten bei der Suche in anderen Sprachen entsprechend stärker berücksichtigt. Und selbstverständlich steigt das Ranking auch aufgrund dieser klaren und transparenten Strukturierung.

Wie wird das hreflang-Tag in TYPO3 eingebunden?

Als erstes muss - falls noch nicht geschehen - TYPO3für die Mehrsprachigkeit eingestellt werden.

Dafür gehen wir ins Modul "Liste" und wählen die oberste Seite aus und legen dort über Website-Sprache eine neue Sprachvariante an.

Nachdem die neue Sprache angelegt wurde, muss noch das Typoscript Template angepasst werden.

Erst wird die deutsche Sprache mit der uid=0 angelegt.
 

config.sys_language_uid = 0

config.locale_all = de_DE

config.language = de

config.htmlTag_langKey = de

Danach wird per Condition die 2. Sprache festgelegt.

[globalVar = GP:L = 1]

config.sys_language_uid = 1

config.language = en

config.locale_all = en_UK

config.htmlTag_langKey = en-UK

[global]

Jetzt ist es möglich, eine Übersetzung für die Seite anzulegen:

Nachdem eine Übersetzung angelegt wurde, fehlt nur noch das hreflang-Tag.

Um diesen zu generieren, wechseln wir wieder in das Typoscript-Template und tragen folgendes ein:

tmp.hreflang = HMENU
tmp.hreflang {
      special = language
      special.value = 0, 1
      special.normalWhenNoLanguage = 0
      1 = TMENU
      1 {
         NO = 1
         NO {
            stdWrap.cObject = TEXT
            stdWrap.cObject {
               value =  de || en
             }
             linkWrap = <link rel="alternate" hreflang="|
            doNotLinkIt = 1
            after.cObject = TEXT
            after.cObject {
               stdWrap.wrap = " href="https://www.wacon.de/|" />
               stdWrap.typolink.parameter.data = page:uid
               stdWrap.typolink.additionalParams = &L=0 || &L=1
               stdWrap.typolink.returnLast = url
          }
       }
      CUR = 1
      CUR {
        doNotShowLink = 1
      }

     USERDEF1 = 1
      USERDEF1{
        doNotShowLink = 1
      }
    }
 }


Dieses Snippet generiert sowohl das englische hreflang-Tag, als auch die deutschen Version.

Das ganze fügen wir mit:

page.headerData.3780 < tmp.hreflang
page.headerData.3780.insertData = 1

in den Header der Seite ein.

Ergebnis

Auf den beiden Seite steht im Quellcode nun:

<link rel="alternate" hreflang="en" href="<ENGLSICHE_URL>" />

<link rel="alternate" hreflang="de" href="<DEUTSCHE_URL>" />

Haben Sie Fragen oder können wir Sie als TYPO3-Agentur technisch unterstützen? Dann nehmen Sie doch einfach Kontakt mit uns auf. Gerne helfen wir Ihnen zu fairen Preisen.