Jeena Paradies: Mehrsprachige Seite - Herangehensweise

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:

  • Alle Inhalte in externe Textdateien
  • Praefix de_ fuer deutsch
  • Praefix en_ fuer englisch
  • Aufruf der Seiten: pl0de....html, pl0en...html
  • Umsetzung URL mit Rewrite in page.phtml?pl=0de....
  • In der globalen Einstellungsdatei mit "substr" Sprache ermitteln und die entsprechenden Textdateien laden/einfuegen.

man liest sich
Wilhelm
---------------------------------------------------

  1. 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

    --
    ich bin ein nachmacher: http://www.eppstein.de
    1. 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

      --
      Die Familie hilft sich gegenseitig in vielen Lebenslagen
      http://jeenaparadies.de/weblog/2004/mai/familienhilfe/
      Kinder schlagen zu Erziehungszwecken ist in Deutschland verboten!
      http://jeenaparadies.de/artikel/kinderschlagen/
      Jeenas Bannertauschportal; selbstgemacht ;-)
      http://jeenasbannerbude.de
  2. 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

    1. 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:

      • man kann sich eine zusätzliche deutsche Domain als Deutscher leichter merken.
      • wenn jemand _zufällig_ domain2.de in die Browserzeile angibt dann kommt er auch auf die Seite (die Wahrscheinlichkeit geht dabei IMHO gegen 0)

      Nachteile:

      • Falsches Logo auf der .de Domain (Besucher wird evtl. verunsichert und verschwindet wieder)
      • PageRank wird auf die Seiten aufgeteilt

      Die Frage ist was ich noch vergessen habe bei den Vor- und Nachteilen.

      Grüße
      Jeena Paradies

      --
      Die Familie hilft sich gegenseitig in vielen Lebenslagen
      http://jeenaparadies.de/weblog/2004/mai/familienhilfe/
      Kinder schlagen zu Erziehungszwecken ist in Deutschland verboten!
      http://jeenaparadies.de/artikel/kinderschlagen/
      Jeenas Bannertauschportal; selbstgemacht ;-)
      http://jeenasbannerbude.de
      1. 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

        1. 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

          --
          Die Familie hilft sich gegenseitig in vielen Lebenslagen
          http://jeenaparadies.de/weblog/2004/mai/familienhilfe/
          Kinder schlagen zu Erziehungszwecken ist in Deutschland verboten!
          http://jeenaparadies.de/artikel/kinderschlagen/
          Jeenas Bannertauschportal; selbstgemacht ;-)
          http://jeenasbannerbude.de
          1. 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

  3. 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

  4. 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

    --
    Die Familie hilft sich gegenseitig in vielen Lebenslagen
    http://jeenaparadies.de/weblog/2004/mai/familienhilfe/
    Kinder schlagen zu Erziehungszwecken ist in Deutschland verboten!
    http://jeenaparadies.de/artikel/kinderschlagen/
    Jeenas Bannertauschportal; selbstgemacht ;-)
    http://jeenasbannerbude.de
    1. 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

      1. 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

        1. 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

          1. 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

            --
            Der Verstand steht ueber allem. Was durch die Vorstellungskraft nicht geschaffen werden kann, existiert nicht.
            http://wwwtech.de/
            1. 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

              1. 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

                1. 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