Google und das hreflang
Fred
- sprache
Moin moin,
ich bin über hreflang gestolpert.
Früher notierte man im head <meta name="Content-language" content="de">, heute <html lang="de">. Aber wofür ist nun diese Angabe: <link rel="alternate" hreflang="es" href="http://es.example.com/" />?
Geht es bei der Angabe einzig darum Google alternative Sprachversionen anzugeben? Dann denke ich mal ich sollte davon gebrauch machen. Die Seite www.barth.de existiert in de und en, die en Version liegt im Verzeichnis "/en". Nun kann man diese Angabe in jeder html Datei oder in der sitemap.xml machen. Ich würde die sitemap.xml bevorzugen.
Z.Z. sehen die Einträge so aus:
<url>
<loc>http://www.barth.de/footer/agb.html</loc>
<lastmod>2016-02-09T10:00:00+00:00</lastmod>
</url>
<url>
<loc>http://www.barth.de/en/footer/agb.html</loc>
<lastmod>2016-02-09T10:00:00+00:00</lastmod>
</url>
Da ja jede Version auf sich selbst und die andere Sprachversion zeigen soll würde ich die Einträge wie folgt ändern:
<url>
<loc>http://www.barth.de/footer/agb.html</loc>
<xhtml:link rel="alternate"
hreflang="de"
href="http://www.barth.de/footer/agb.html" />
<xhtml:link rel="alternate"
hreflang="en"
href="http://www.barth.de/en/footer/agb.html" />
<lastmod>2016-02-10T10:00:00+00:00</lastmod>
</url>
<url>
<loc>http://www.barth.de/en/footer/agb.html</loc>
<xhtml:link rel="alternate"
hreflang="de"
href="http://www.barth.de/footer/agb.html" />
<xhtml:link rel="alternate"
hreflang="en"
href="http://www.barth.de/en/footer/agb.html" />
<lastmod>2016-02-10T10:00:00+00:00</lastmod>
</url>
Ist dann diese Vorgehensweise richtig und sinnvoll?
Gruß
Fred
@@Fred
Früher notierte man im head <meta name="Content-language" content="de">, heute <html lang="de">.
Das hat weniger mit früher und heute zu tun denn damit, dass verschiedene Dinge angegeben werden: Sprache des Textes vs. Sprache(n) des Zielpublikums. Die meta
-Angabe ist in HTML5 nicht normgerecht und sollte nicht verwendet werden.
Aber wofür ist nun diese Angabe: <link rel="alternate" hreflang="es" href="http://es.example.com/" />?
Siehe Spec (unter „Otherwise“).
Geht es bei der Angabe einzig darum Google alternative Sprachversionen anzugeben?
Nein. Es geht darum, allen Clients alternative Sprachversionen anzugeben. Ob und was diese mit der Information anfangen, ist deren Sache.
Wenn du also der Meinung bist, die Angabe könnte für Clients irgendwie nützlich sein, bau sie ein.
Die Seite www.barth.de existiert in de und en
Nur dass der Nutzer davon leider nichts mitbekommt. Nutzer mit Englisch im Browser als bevorzugte Sprache eingestellt bekommen die deutsche Seite zu sehen, obwohl doch eine englische verfügbar wäre. Schlecht. Es ist immer angebracht, Sprachvereinbarung (language negotiation) einzusetzen.
die en Version liegt im Verzeichnis "/en".
Damit fällt MultiViews-Sprachvereinbarung als einfache Variante aus. Das macht aber Sprachvereinbarung nicht unmöglich; var
-Dateien könnten Mittel der Wahl sein. Oder PHP.
LLAP 🖖