og:locale
<meta property="og:locale" content="de_DE" />
<meta property="og:locale:alternate" content="en_US" />Was soziale Netze lesen, wenn jemand einen Link teilt. Abschaltbar mit seo.ogLocale: false.
Zu beachten ist der Unterstrich: Open Graph schreibt de_DE, hreflang schreibt de-DE. Das
Plugin setzt beides selbst richtig aus demselben locale-Feld.
<html lang>
Das erzeugt Quartz, nicht das Plugin — aus dem Frontmatter-Feld lang der Seite. Und genau
dieses Feld setzt das Plugin beim Erkennen, falls es fehlt.
Daraus folgt eine kleine Kette:
Ordnername de/ → Erkennung → frontmatter.lang = de-DE → <html lang="de-DE">
Wer das Feld selbst schreibt, überschreibt das Ergebnis der Erkennung nicht — es wird nur gesetzt, wenn es fehlt.
code und locale sind zweierlei
| Feld | Wofür | Beispiel |
|---|---|---|
code | Ordnernamen, Dateisuffixe, Frontmatter, data-lang | de |
locale | <html lang>, hreflang, og:locale | de-DE |
Ohne locale nimmt das Plugin den code — dann steht <html lang="de">. Das ist gültig, aber
weniger genau: de-AT und de-DE unterscheiden sich in Datums- und Zahlenformaten.
languages:
- { code: de, native: Deutsch, locale: de-DE }
- { code: en, native: English, locale: en-US }Warum die Screenreader-Nutzer das merken
<html lang>entscheidet, mit welcher Aussprache ein Screenreader vorliest. Steht dort die falsche Sprache, wird deutscher Text englisch ausgesprochen — unverständlich, und es ist die billigste Barrierefreiheitsverbesserung, die es gibt.