Sven Rautenberg: Virtual Host oder?

Beitrag lesen

Moin!

Du hingegen scheinst nur eine simple Website mit mehreren Sprachen zu haben

Stimmt nicht ganz. Ich habe eine Portal-Seite, die mit Smarty Template Engine gemacht wird. Das Angebot im Portal ist ziemlich groß und momentan einsprachig.

Das _ist_ eine simple Webseite. :)

Und die Tatsache, dass Smarty und Skriptprogrammierung mit im Spiel ist, ist natürlich vorteilhaft.

Ich suche die Möglichkeit, meine Templates in einer anderen Sprachen darzustellen, _ohne_ das die Programmierung mehrmals kopieren zu müssen. Es kommen immer wieder neu Features dazu und ich würde gerne das ständige Kopieren von den gleichen Funktionen vermeiden.

Das ist ja auch kein Problem. Du solltest dich gedanklich davon verabschieden, dass die vom Benutzer angesteuerte URL 1:1 mit einem auf dem Webspace abgelegten Skript zusammenfallen muß. Diese Beziehung ist für die allermeisten dynamischen Websites zu unflexibel. mod_rewrite ist hier das spannende Stichwort. Du kannst damit recht problemlos die Baumstruktur deiner URL-Welt konvertieren auf die Skript-Struktur deiner Template-Welt. Mußt eigentlich nur wissen, wie's geht - Übung macht da den Meister.

www.example.org/ -> hier gibts ein Skript, welches die bevorzugte Sprache abfragt und passend weiterleitet.

Genau das will ich vermeiden. Keine Abfrage von Browser-Sprache, also keine Cookies oder Session oder ähnliches.

Ich habe nicht von Cookies oder Session gesprochen, das findet nicht statt. Die bevorzugte Sprache kann der Benutzer unabhängig von der Sprachversion der Browsersoftware einstellen, sie steckt im vom Browser gesendeten HTTP-Header "Accept-Language". Auf diese Weise kannst du beispielsweise einen deutschen Browser benutzen, und trotzdem russisch und englisch als bevorzugte Sprachen einstellen.

Für die allermeisten Benutzer dürfte diese Einstellung ihren tatsächlichen Wunsch angeben (dafür ist diese Information schließlich vorgesehen), also sollte man sie dafür auch benutzen. Für alle diejenigen, die dort keine, keine passende oder die falsche Angabe stehen haben, ist eine Standardauswahl deinerseits mehr oder weniger zwingend vorzunehmen. Denn irgendwas "unpassendes" muß kommen - und sei es nur eine langweilige "Bitte Sprache wählen"-Seite.

Dass die einmal getroffene oder geänderte Sprachauswahl auch fixiert bleibt, dafür sorgt eben die Integration der Sprache in die URL als Verzeichnisangabe.

Zum Beispiel, mein Browser ist Deutsch, aber Deutsch ist nicht meine Muttersprache und ich möchte nicht, dass "meine" Sprache abhängig vom Browser "erkannt" wird.

Die Sprache wird abhängig von deiner Auswahl der bevorzugten Sprache erkannt. Auf sehr vielen Seiten wird eine derartige Funktion bereits benutzt, es wäre also schlau, wenn du deinen Browser an dieser Stelle passend einstellen würdest.

Aber selbst wenn die Website eine falsche Annahme über die Sprache trifft: Dieser Fehler wird vom Besucher einmal korrigiert, er hat durch Bookmarks der URL (in der ja die gewählte Sprache steckt) die Möglichkeit, zukünftig immer zur richtigen Sprache zu gelangen.

  • Sven Rautenberg