Sven Rautenberg: Mehrsprachigkeit

Beitrag lesen

Moin!

mit welcher Technik erreiche ich eine Sprach-Umschaltmöglichkeit auf einer Webseite?

Mit einem Link, auf den man klicken kann.

Dem User soll auf jeder Seite die Möglichkeit gegeben werden, zwischen deutsch und englisch zu wechseln und dabei sofort auf die entsprechende Seite weitergeleitet werden. Er soll sich also nicht nach dem Sprachwechsel auf einer Indexseite wiederfinden, sondern an der Stelle, bis zu der er bisher gesurft war.

Das läßt sich eigentlich nur durch eine einzige Methode realisieren: Du brauchst für jede Sprachvariante eine eindeutige URL.

Beispiele:
/de/verzeichnis/seite.html und
/en/verzeichnis/seite.html

Oder:
/verzeichnis/seite_de.html und
/verzeichnis/seite_en.html

Oder (in kompliziert)
/verzeichnis/seite.html und
/verzeichnis/page.html

Du kannst die automatische Spracherkennung des Servers nutzen. Das würde dann hinauslaufen auf:
/verzeichnis/seite.html -> ist automatisch die gewünschte Sprache, die im Browser steht
/verzeichnis/seite.de.html -> deutsche Version.
/verzeichnis/seite.en.html -> englische Version.

Das Problem hierbei wird sein, dass du jeden normalen Link auf der Seite nicht auf eine ".de.html"-Seite (oder ".en.html") setzt, sondern auf ".html". Damit wird die Auswahl, die von der Browsereinstellung abweicht, auf jeder Seite rückgängig gemacht, was im Prinzip schlecht ist.

Ich setze daher für die Startseite (http://www.example.com/) meist ein Skript ein, welches einen Redirect auf die vorhandene und gewünschte Sprachversion in den Verzeichnissen /de, /en etc. auslöst und dort die Startseite lädt.

Je nach deinen Möglichkeiten kannst du mit Javascript die aktuelle URL auswerten, die derzeitige Sprache darin durch eine andere ersetzen und die Seite neuladen (als javascriptlose Alternative baust du einen festen Link auf die Startseite der anderen Sprache ein), oder du schaffst es gar, den Link auf dem Server dynamisch zu generieren, weißt dann natürlich, welche Sprache aktuell ausgegeben wird und kannst links auf identische Seiten der anderen Sprachen ausgeben, die dann auch ohne Javascript funktionieren.

- Sven Rautenberg

--
ss:) zu:) ls:[ fo:} de:] va:) ch:] sh:) n4:# rl:| br:< js:| ie:( fl:( mo:|