Internationalisierung
App und CMS unterstützen derzeit Deutsch (de) und Englisch (en).
Webapp
next-intl verwaltet UI-Texte, Locale-Routen und Erkennung. Die Reihenfolge
bei einem Aufruf ohne Locale ist:
- gespeicherte Auswahl im Cookie
NEXT_LOCALE; - unterstützte Browsersprache;
- Deutsch als Fallback.
Explizite URLs mit /de oder /en haben Vorrang. Neue UI-Texte werden immer
in messages/de.json und messages/en.json ergänzt.
CMS-Inhalte
Lokalisierungen desselben Strapi-Dokuments teilen eine documentId. Die App
fragt Inhalte und Beziehungen immer für die aktive Locale ab. Caches dürfen
daher nicht nur nach Dokument-ID, sondern müssen auch nach Locale getrennt
werden.
Eine fehlende englische Übersetzung wird nicht durch deutschen Inhalt ersetzt. Die App zeigt stattdessen einen Hinweis und bietet kontrollierte Rückwege an.
Änderungen am Locale-Vertrag
Neue Sprachen betreffen mindestens:
- Strapi i18n und vorhandene Lokalisierungen;
- App-Routing und Message-Kataloge;
- Preview-Validierung in App und CMS;
- TTS-Stimmen oder Referenzaufnahmen;
- Tests für Routing, Inhalte und fehlende Übersetzungen.