Mehrsprachige Seite - Herangehensweise
Jeena Paradies
- programmiertechnik
Hallo,
Erst mal Danke an CK für die Löschung des verunglückten Threads und an Dirk und Wilhelm dafür dass sie mich darauf aufmerksam gemacht haben.
Ich versuche es jetzt noch einmal, aber besser.
-----------------------------------------
Hallo,
Ich habe jetzt zum ersten mal den Auftrag eine zweisprachige Seite zu erstellen (Deutsch - Englisch). Nun überlege ich schon eine Weile wie ich das am besten bewerkstelligen soll. Der Auftraggeber will sich gleich drei Domains sichern:
domain1.com
domain2.de
seinvorname-nachname.de
Ich habe auch schon einiges gefunden wie man bei einer Domain zweisprachig fahren kann also mit einer Variablen in der URL (?lan=en) oder mit verschiedenen Verzeichnissen (../en/.. | ../de/..) dann noch mit verschiedenen Endungen der Dateien (beispiel.de.html). Das alles war doch ziemlich mit Gewurstel verbunden und keine von den Herangehensweisen hat mich 100%ig überzeugt.
Ich habe mir jetzt aber auch erst einmal die Frage gestellt ob es nicht am sinnvollsten wäre zwei unabhängige Seiten zu machen. Die englische, auf die man kommt wenn man http://domain1.de eingibt, und die deutsche wenn man http://domain2.de eingibt. Beide nur mit einem Link auf die jeweilige Startseite bei Links oder irgendwo verbunden.
Kann mir jemand verraten welchen Vorteil noch die dritte Domain bietet wenn man sie auch noch auf die Deutsche Seite einfach umleitet???
Also was meint ihr soll ich zwei unabhängige Seiten machen die man nur über die Domains erreicht, oder eine die sich aus Datenbank und Arrays je nach Sprache die Seite zusammenbastelt? Es muss sowieso alles dynamisch erzeugt werden denn dort wird der Besitzer (fast) alles selbst pflegen.
Grüße
Jeena Paradies
-------------------------------------------
Antwort von André Laugks:
Ich habe auch schon einiges gefunden wie man bei einer Domain zweisprachig fahren kann also mit einer Variablen in der URL (?lan=en) oder mit verschiedenen Verzeichnissen (../en/.. | ../de/..) dann noch mit verschiedenen Endungen der Dateien (beispiel.de.html). Das alles war doch ziemlich mit Gewurstel verbunden und keine von den Herangehensweisen hat mich 100%ig überzeugt.
Das ist kein Gewustel. Auch die Webseite bei denen das Verzeichnis die Sprachkennung hat, kann dynamisch sein, wenn man mal an MorRewrite denkt.
Bei mehrsprachigen Seiten trennt man am besten Inhalt von Layout. Je nach dem wo man die Daten abspeichert, wird man zusätzlich die Sprachkennung mit abspeichern, nicht mehr und nicht weniger.
Kann mir jemand verraten welchen Vorteil noch die dritte Domain bietet wenn man sie auch noch auf die Deutsche Seite einfach umleitet???
Gar kein Vorteil, nur Gewurstel.
MfG, André Laugks
---------------------------------------------------
Antwort von Wilhelm Turtschan:
Also was meint ihr soll ich zwei unabhängige Seiten machen die man nur über die Domains erreicht, oder eine die sich aus Datenbank und Arrays je nach Sprache die Seite zusammenbastelt? Es muss sowieso alles dynamisch erzeugt werden denn dort wird der Besitzer (fast) alles selbst pflegen.
Ich loese es via PHP so:
man liest sich
Wilhelm
---------------------------------------------------
Hi, mal eine kurze knappe Antwort,
wenn dir erverseitig JSP, bzw. J2EE zur Verfügung steht, schau dir mal Struts an ;-) http://jakarta.apache.org/struts/index.html
Gruß
Phil
Hallo,
wenn dir erverseitig JSP, bzw. J2EE zur Verfügung steht, schau dir mal Struts an ;-) http://jakarta.apache.org/struts/index.html
Phuh, Java? Hm da fehlen mir absolut die Kenntnisse. Ich denke ich muss erst einmal beim einfachen PHP bleiben.
Grüße
Jeena Paradies
Moin!
Ich habe jetzt zum ersten mal den Auftrag eine zweisprachige Seite zu erstellen (Deutsch - Englisch). Nun überlege ich schon eine Weile wie ich das am besten bewerkstelligen soll.
Was sagt das Archiv dazu? Das Thema wurde schon mehrfach behandelt, an den grundsätzlich möglichen Lösungen hat sich seither nichts geändert.
- Sven Rautenberg
Hallo,
Was sagt das Archiv dazu?
Ich habe ja erwähnt was das Archiv dazu sagt.
Ich habe auch schon einiges gefunden wie man bei einer Domain zweisprachig fahren kann also mit einer Variablen in der URL (?lan=en) oder mit verschiedenen Verzeichnissen (../en/.. | ../de/..) dann noch mit verschiedenen Endungen der Dateien (beispiel.de.html).
Und die Variante mit den Verzeichnissen gefällt mir auch gut.
Nur zur Frage ob eine .de _und gleichzeitig_ eine .com Domain die gleichzeitig auf eine und die selbe Seite zeigen sinnvoll oder nicht sinnvoll sind habe ich nichts herauslesen können.
Vorteile:
Nachteile:
Die Frage ist was ich noch vergessen habe bei den Vor- und Nachteilen.
Grüße
Jeena Paradies
Nur zur Frage ob eine .de _und gleichzeitig_ eine .com Domain die gleichzeitig auf eine und die selbe Seite zeigen sinnvoll oder nicht sinnvoll sind habe ich nichts herauslesen können.
Hallo Jeena,
mach doch einfach ein Forwarding der deutschen Domain auf die .com Domain, mit deutscher Sprache in der URL (lang=de), damit der Benutzer gleich auf der deutschen Variante der .com Seite landet. Wenn inhaltlich überall eh das selbe sein soll, wieso dann überhaupt den ganzen Content auf den de Server schieben?
Die zusätzliche de Domain hat meiner Meinung nach halt nur die Funktion als "nationale" Visitenkarte zu dienen, wo der Inhalt der Visitenkarte letzendlich liegt interessiert doch nicht die Bohne, oder?
So hast Du natürlich auch keine Probleme mit Inkonsistenten usw...
Ciao,
Timo
Hallo,
mach doch einfach ein Forwarding der deutschen Domain auf die .com Domain, mit deutscher Sprache in der URL (lang=de), damit der Benutzer gleich auf der deutschen Variante der .com Seite landet. Wenn inhaltlich überall eh das selbe sein soll, wieso dann überhaupt den ganzen Content auf den de Server schieben?
Nein nein, es sollte schon auf dem gleichen Server und in der gleichen Datenbank bleiben.
Die zusätzliche de Domain hat meiner Meinung nach halt nur die Funktion als "nationale" Visitenkarte zu dienen, wo der Inhalt der Visitenkarte letzendlich liegt interessiert doch nicht die Bohne, oder?
Meinst du dass sich dann die url in der Adressleiste von domain2.de zu domain1.com/de/ ändern sollte?
Grüße
Jeena Paradies
Nein nein, es sollte schon auf dem gleichen Server und in der gleichen Datenbank bleiben.
Ich hatte beim schreiben noch das Posting von Danny im Kopf. Das hört sich doch vernünftig an.
Wenn alles auf dem selben Server ist, dann verstehe ich auch nicht Deine Frage wegen Inkonsistenz nicht. Verlink halt auf die Logos der englischen Page.
Also dennoch würde ich nix hartkodierte Lösungen für deutsch od. englisch bauen. Layout von Content trennen: Content in die DB. Bei allen Strings die dennoch direkt im PHP Code stehen auf $lang-Variable prüfen.
Meinst du dass sich dann die url in der Adressleiste von domain2.de zu domain1.com/de/ ändern sollte?
Als User wäre mir das ziemlich wurscht und darauf kommts ja letztendlich an, sieht vielleicht ein bißchen besser aus aber darüber zu diskutieren geht ins philosophische. Beispielsweise unter www.yellowcomputing.de ist alles nur per der $lang Variable gehandelt.
Ciao,
Timo
Grüße
Jeena Paradies
Hallo Jeena,
ich bin für eine zentrale Seite mit eingebauter Sprachwahl, damit der User dynamisch wechseln kann. Auf de-Domains würde ich Deutsch vorbelegen, auf allen anderen Englisch. Die Inhalte kannst Du abgesehen von eine DB auch im XML-Format speichern (mit lang-Attributen).
freundlichen Gruß
Danny
Hallo,
Antwort von André Laugks:
Bei mehrsprachigen Seiten trennt man am besten Inhalt von Layout. Je nach dem wo man die Daten abspeichert, wird man zusätzlich die Sprachkennung mit abspeichern, nicht mehr und nicht weniger.
Dann bleibt da noch die Verzeichnisstruktur. Es ist für eine englische Seite unschön http://domain1.de/en/artikel/welterbe-heute.html als Link weiterzugeben. Ich bin noch am überlegen wie ich das machen soll.
Gar kein Vorteil, nur Gewurstel.
Ok dieser Meinung bin ich auch. Bringt dann wenn man das so mit den Verzeichnissen /en/ /de/ macht dann eine .de domain überhaupt einen Vorteil, oder nur Nachteile? Ok man kann sie sich als Deutscher leicher merken, aber dann habe ich das Problem mit dem Logo und Impressumstext, außerdem wird ja dann der Pagerank wohl auf die einzelnen Seiten verteilt da ja beide domains beide Versionen anbieten.
Antwort von Wilhelm Turtschan:
Ich loese es via PHP so:
- Alle Inhalte in externe Textdateien
Warum gerade Textdateien?
- Praefix de_ fuer deutsch
- Praefix en_ fuer englisch
- Aufruf der Seiten: pl0de....html, pl0en...html
Ach so das sind dann aber nicht gerade sprechende URLs oder?
- Umsetzung URL mit Rewrite in page.phtml?pl=0de....
- In der globalen Einstellungsdatei mit "substr" Sprache ermitteln und die entsprechenden Textdateien laden/einfuegen.
Wenn jetzt jemand die falschen Einstellungen am Browser hat und als Deutscher die englische Version bekommt, dann auf den "deutsche Version" Link klickt ...
Aha jetzt kommt mir die Lösung schon ins Gehirn geflattert ;) Man merkt sich die Einstellung in den einzelnen Links auf der Seite, Logisch! Ich habe mich schon längere Zeit gewundert wo ich die Info speichern soll welche Sprachversion man eingestellt hat.
Grüße
Jeena Paradies
habe d'ehre
Ich loese es via PHP so:
- Alle Inhalte in externe Textdateien
Warum gerade Textdateien?
Weil ich eine gewisse Uebelkeit verspuere, bei kleineren Projekten den Panzer "Datenbank" auszupacken.
- Praefix de_ fuer deutsch
- Praefix en_ fuer englisch
- Aufruf der Seiten: pl0de....html, pl0en...html
Ach so das sind dann aber nicht gerade sprechende URLs oder?
Was hinter "de" oder "en" kommt bleibt voellig Dir ueberlassen. "pl" dient nur fuer den mod_rewrite und die "0" kennzeichnet die Produktivumgebung. Staende hier eine "1" waere es die Vorschauversion innerhalb unseres Contenttools.
Du koenntest ja schreiben pl0de_meinekatzeundich.html"
Wenn jetzt jemand die falschen Einstellungen am Browser hat und als Deutscher die englische Version bekommt,
Mein Firefox ist englisch, also bekaeme ich mit Content-Negotation die "en"-Version. Das aergert mich immer, deshalb verwende ich diese Option nicht.
Aha jetzt kommt mir die Lösung schon ins Gehirn geflattert ;) Man merkt sich die Einstellung in den einzelnen Links auf der Seite, Logisch!
Eine kleine Variable, allerdings solltest Du dann die Links auch immer dynamisch erstellen.
Ich schicke Dir per Mail mal einen Link zu einer in Arbeit befindlichen Site.
man liest sich
Wilhelm
Hi Wilhelm,
Mein Firefox ist englisch, also bekaeme ich mit Content-Negotation die "en"-Version. Das aergert mich immer, deshalb verwende ich diese Option nicht.
ich überlege gerade, welchen triftigen Grund es geben könnte, seinen Browser nicht auf seine Bedürfnisse einzustellen. Möchtest du mir dabei helfen? ;-)
Grüße,
Roland
habe d'ehre
Mein Firefox ist englisch, also bekaeme ich mit Content-Negotation die "en"-Version. Das aergert mich immer, deshalb verwende ich diese Option nicht.
ich überlege gerade, welchen triftigen Grund es geben könnte, seinen Browser nicht auf seine Bedürfnisse einzustellen. Möchtest du mir dabei helfen? ;-)
Weil ich zu faul bin, mir immer die spater erscheinende deutsche Version zu laden. :-)
man liest sich
Wilhelm
Hallo Wilhelm,
Mein Firefox ist englisch, also bekaeme ich mit
Content-Negotation die "en"-Version. Das aergert mich immer,
deshalb verwende ich diese Option nicht.ich überlege gerade, welchen triftigen Grund es geben könnte,
seinen Browser nicht auf seine Bedürfnisse einzustellen.
Möchtest du mir dabei helfen? ;-)Weil ich zu faul bin, mir immer die spater erscheinende deutsche
Version zu laden. :-)
Ich glaube, ich stehe auf dem Schlauch. Was soll das miteinander
zu tun haben?
In meinem Firefox (englische Version) habe ich eingestellt, dass
zuerst de-DE, dann de und dann en geschickt werden soll.
Grüße,
CK
habe d'ehre
Weil ich zu faul bin, mir immer die spater erscheinende deutsche
Version zu laden. :-)
Ich glaube, ich stehe auf dem Schlauch. Was soll das miteinander
zu tun haben?
In meinem Firefox (englische Version) habe ich eingestellt, dass
zuerst de-DE, dann de und dann en geschickt werden soll.
Soll ich ganz ehrlich sein? Ich weiss nicht einmal wo man das einstellen koennte. :-)
Muss wohl an meinem Alter liegen, Rumschrauben ist nicht mehr mein Ding. ;-)
man liest sich
Wilhelm
Hi Wilhelm,
In meinem Firefox (englische Version) habe ich eingestellt, dass
zuerst de-DE, dann de und dann en geschickt werden soll.Soll ich ganz ehrlich sein? Ich weiss nicht einmal wo man das einstellen koennte. :-)
Bearbeiten / Einstellungen. So weit noch klar? ;-p
-> Navigator -> Sprachen -> [Hinzufügen] -> Deutsch wählen, nach oben schieben, fertig.
Muss wohl an meinem Alter liegen, Rumschrauben ist nicht mehr mein Ding. ;-)
Dann doch lieber keppeln, dass jeder Scheiß heute englisch sein muss ... *g*
Grüße,
Roland
habe d'ehre
Bearbeiten / Einstellungen. So weit noch klar? ;-p
-> Navigator -> Sprachen -> [Hinzufügen] -> Deutsch wählen, nach oben schieben, fertig.
Muss wohl an meinem Alter liegen, Rumschrauben ist nicht mehr mein Ding. ;-)
Hmhh, kommt mir irgendwie bekannt vor. :-)
Allerdings hat es bei irgendeiner Mozilla mal nicht funktioniert, dann war es mir zu bloede.
Ausserdem: Manchmal muss man sich (kuenstlich) aufregen.
man liest sich
Wilhelm