webentwicklung-frage-antwort-db.com.de

Hreflang für Regionen (wie Staaten und Provinzen) innerhalb eines Landes

Ich arbeite an einer Website, deren Inhalt je nach Bundesland/Bundesstaat des Nutzers unterschiedlich ist.

Ist es gültig, den Unterteilungscode wie unten beschrieben zu hreflang hinzuzufügen?

<link rel="alternate" hreflang="en-ca-ab" href="https://www.example.com/ca/ab/example/"/> 

Wenn nicht, gibt es eine andere Möglichkeit, Suchmaschinen mitzuteilen, dass der Inhalt für eine bestimmte Provinz/ein bestimmtes Bundesland spezifisch ist?

5
Brad Thiessen

Kurz gesagt, nein. Der Abschnitt "Unterstützte Sprach-/Regionscodes" in Googles Hreflang-Richtlinien ist ziemlich eindeutig:

Der Wert des Attributs hreflang gibt die Sprache (im Format ISO 639-1) und optional die Region (im Format ISO 3166-1 Alpha 2) einer alternativen URL an.

Die Verwendung des Wortes "Region" dort ist vielleicht verwirrend. ISO 3166-1 Alpha 2-Codes kennzeichnen Länder 1.

Was Sie wahrscheinlich tun möchten, ist lokales SEO, das sich mehr auf Inhalte und externe Optimierungen stützt, um Suchanfragen mit lokaler Absicht zu zielen. Es würde den Rahmen Ihrer Frage sprengen, dies hier zu behandeln.


1 Um wirklich pedantisch zu sein, ist selbst dies semantisch problematisch. Beispielsweise haben die Mitgliedsländer des Vereinigten Königreichs keine eigenen Codes, obwohl es sich um Länder handelt (keine Bundesstaaten oder Provinzen).

3
GDav

Die HTML5-Spezifikation definiert hreflang folgendermaßen:

Das hreflang-Attribut für Elemente, die Hyperlinks erstellen, gibt, falls vorhanden, die Sprache der verknüpften Ressource an. Es ist rein beratend. Der Wert muss ein gültiges BCP 47-Sprachkennzeichen sein. [BCP47] Benutzeragenten dürfen dieses Attribut nicht als maßgeblich betrachten. Beim Abrufen der Ressource dürfen Benutzeragenten nur Sprachinformationen verwenden, die der Ressource zugeordnet sind, um ihre Sprache zu bestimmen, und keine Metadaten, die in der Verknüpfung mit der Ressource enthalten sind.

(siehe https://www.w3.org/TR/html5/links.html#attr-hyperlink-hreflang )

BCP47 ist ein IETF-Dokument " Tags zum Identifizieren von Sprachen ". Es wird detailliert beschrieben, wie ein Sprach-Tag gebildet wird und welcher Inhalt möglich ist.

Das Parsen ist im Grunde genommen language[-script][-region]*("-" variant)*("-" extension):

  1. der erste Teil ist die Sprache, die in den ISO 639-1 Alpha-2-Codes definiert ist, also en aus Ihrem Fall, mit optionalen erweiterten Sprachuntertags.
  2. das Skript besteht aus 4 Zeichen. Daher ist dies hier nicht der Fall (optional).
  3. die Region ist von ISO 3166-1, Ländercodes, und es wird bevorzugt, in Großbuchstaben zu schreiben, daher CA,
  4. untergeordnete Tags für Varianten werden als definiert, um zusätzliche, gut erkannte Variationen anzuzeigen, die eine Sprache oder ihre Dialekte definieren, die nicht von anderen verfügbaren untergeordneten Tags abgedeckt werden , sie jedoch bestehen aus mindestens 4 Zeichen (siehe Punkt 4 von 2.2.5)

Also scheint en-ca-ab für mich nicht gültig zu sein. Der ISO 3166-2-Code für Alberta in Kanada lautet "CA-AB". Sie können ihn jedoch nicht als unveränderte Variante verwenden (aufgrund des Bindestrichs und weil jede Variante in einer Registrierung registriert ist).

Wenn Sie Ihre Zeichenfolge unter http://unicode.org/cldr/utility/languageid.jsp eingeben, werden Sie feststellen, dass sie als ungültig gekennzeichnet ist. Ich sehe auch keine Registrierung für "Alberta" in https://www.iana.org/assignments/language-subtag-registry/language-subtag-registry

Kurz gesagt, denken Sie wirklich, dass Sie die Sprache Englisch-Kanadisch als in Alberta gesprochen definieren müssen, weil sie sich so stark von der Sprache Englisch-Kanadisch unterscheidet. Dies wäre das gültige Sprachkennzeichen en-CA?

Denken Sie daran, dass Sie eine Sprache identifizieren, keine Geografie. Wenn Sie angeben möchten, dass ein Teil Ihrer Website nur mit dieser bestimmten Provinz in Zusammenhang steht (z. B. wenn Sie nur dort Dienste bereitstellen), handelt es sich nicht um ein Sprachproblem und sollte daher nichts mit hreflang zu tun haben.

1
Patrick Mevzek

In Bezug auf hreflang können Sie Ihre Inhalte nicht detaillierter als mit dem Schema der Sprache und des Landes angeben.

Ich würde jedoch dringend empfehlen, strukturierte Daten zu verwenden, insbesondere https://schema.org/audience und https://schema.org/spatialCoverage . Mit beiden Eigenschaften können Sie den abgedeckten Bereich sehr genau kommunizieren.

Die Frage, die mir unbeantwortet bleibt, lautet: Wie liefern Sie technisch unterschiedliche Inhalte in unterschiedliche Regionen? IP-basiert? Funktioniert es genau genug für Sie?

1
Evgeniy