Hallo zusammen,
ich habe mal eine grundlegende Frage zum Thema Mehrsprachichkeit in Contao.
Meine Situation: Es existiert ein Modul, welches im languages Ordner ein paar Beschriftungen für Button-Labels und ähnliches hat: "languages/de/default.php" (sowohl auf "de" als auch auf "en").
Zusätzlich habe ich nun eine Funktion geschrieben, die je nachdem was in $GLOBALS['TL_LANGUAGE'] steht ein Template "de_template.html5" oder ein "en_template.html5" lädt.
Das blöde ist, dass in 100% der Fälle das de-Template geladen wird.
Ich habe bereits für Firefox die "Quick Locale Switcher" Erweiterung installiert und auch den Browser in der englischen Version ausprobiert.
Auch das Umstellen der Systemsprache (Windows 7) bracht keine Änderung.
Dazu sei gesagt, dass ich lediglich eine Seitenstruktur habe, bei der die Sprache auf "de" eingestellt ist.
Stelle ich hier auf "en" wird auch sofort mein englisches Template geladen.
Grund für die eine Seitenstruktur: Ich habe keine Lust jede Seite doppelt (oder noch öfter) anzulegen, da ich den Seiteninhalt ohnehin nur aus meinen Templates beziehe und Inhalte nicht direkt in die Artikel auf den Seiten schreibe.
Nun ist es mehr oder weniger offensichtlich, dass die Variable "TL_LANGUAGE" lediglich den in der aktuell aktiven Seitenstruktur definierten Sprach-Wert beinhaltet.
Gibt es einen Weg, um die Sprache, die im Browser / im System definiert ist, auszulesen und daraufhin das dazugehörige Template zu laden und auch die Werte in den languages/de/default.php Dateien zu verwenden?
Oder komme ich in keinem Fall um das Anlegen mehrerer Seitenstrukturen herum, auch wenn diese alle 1:1 identisch zueinander sind, bis auf die eingestellte Sprache?
Getestet wird das Ganze zurzeit lokal über einen XAMPP-Apachen.
Danke und Viele Grüße
*igi*
Lesezeichen