Der Martin: Webseite zweisprachig gestalten

Beitrag lesen

Hallo,

Du meinst die Striche auf dem Bahnsteig, die ein etwa 2x3m grißes Rechteck beschreiben, das dann "Raucherzone" genannt wird? Klar, der Qualm weiß natürlich, dass er dieses Rechteck nicht verlassen darf.

Genau die meine ich. Dieter Nuhr hat sich darüber mal ausgelassen und gefragt: "Wer kommt auf sowas?" Eben genau die Sorte "Denker" ... 😀

das ist derselbe Quatsch wie mit den Feinstaub-Verbotszonen. Fahr mal in Gedanken von Heilbronn kommend die A81 nach Süden. Sobald die Abfahrten zu den Vororten und Randgebieten von Stuttgart kommen (Ludwigsburg, S-Zuffenhausen, S-Feuerbach), steht an jeder Abfahrt ein Schild, das mindestens eine blaue Feinstaub-Plakette vorschreibt (bis vor ein paar Jahren genügte noch die grüne). So soll die Luftqualität in den Ortschaften nicht leiden. Denn auch wenn die fiesesten Dreckschleudern die Autobahn runterdonnern: Der Feinstaub weiß genau, dass er an der Straße bleiben muss und nicht abziehen darf.

Und bitte jetzt kein Diesel-Bashing: Es dürfte mittlerweile jedem klar sein (auch wenn manche es nicht zugeben wollen), dass nur ein geringer Teil des verkehrsbedingten Feinstaub-Aufkommens aus dem Auspuff dringt. Einen wesentlich höheren Anteil hat Abrieb, z.B. von Reifen und Bremsen.

Okay. Ich versuche nachfolgend mal die bisherige Struktur zu verdeutlichen.

Danke, ich glaube, ich hatte sie vorher schon verstanden. Nur kann ich das Konzept bzw. den Ansatz nicht gutheißen. Ich mache daher ein Gegenangebot und versuche dir zu erklären, wie ich das mit der Sprachumschaltung machen würde bzw. hier und da auch schon gemacht habe.

Zentral in der Navigation jeder Seite steht ein Sprachwähler. Der sieht ungestylt etwa so aus:

<ul id="lang-picker">
 <li><a href="?lang=de">Deutsch</a></li>
 <li><a href="?lang=en">English</a></li>
 <li><a href="?lang=fr">Français</a></li>
 <li><a href="?lang=nl">Nederlands</a></li>
</ul>

Das ist clientseitig erstmal alles. Wann immer der Besucher durch Anklicken eines Sprach-Links ausdrücklich eine bestimmte Sprache wählt, wird die aktuelle Seite neu geladen, aber mit dem URL-Parameter lang und einem ISO-Sprachkürzel als Wert.

Serverseitig beginnt mein Script mit einem session_start(). Dann eine mehrstufige Abfrage:

  • Enthält der HTTP-Request einen Accept-Language-Header? Dann nimm den ersten darin gelistete Sprachcode, den du auch bedienen kannst. Wenn der Besucher also Accept-Language: it,de,en anfragt, picke ich mir "de" raus, weil ich Italienisch nicht im Sortiment habe.
  • Ist in der Session der Code für eine unterstützte Sprache gespeichert? Dann nimm den.
  • Gibt es einen URL-Parameter lang? Enthält der das Kürzel einer Sprache, die du liefern kannst? Dann nimm den.
  • Überprüfe, ob der bis hierher ermittelte Sprachcode auch beliefert werden kann. Wenn nicht, nimm einen Defaultwert stattdessen.
  • Speichere den ermittelten Sprachcode in der Session.

Fertig. Kommt ein Besucher von irgendwoher, bekommt er zunächst die Sprachfassung, die sich sein Browser wünscht; er kann das aber jederzeit umstellen, das wird auch gespeichert. Der Wert aus der Session hat Vorrang vor dem Browser-Default. Und der URL-Parameter hat nochmal Vorrang gegenüber allem anderen, der gewinnt immer.

Was erreiche ich damit? Ich kann jederzeit, auf jeder beliebigen Seite des Webauftritts die Sprache umstellen und muss dafür keinen Umweg über die Startseite machen.

In deinem Fall müsste noch dazukommen, dass die Sprache zusätzlich auch in den Benutzer-Einstellungen gespeichert wird und von da aus beim Script-Befinn sowie nach einem Login auch in die Session kopiert wird.

Einen schönen Tag noch
 Martin

--
"Malen nach Zahlen" sagten wir im Matheunterricht, wenn es bei der Kurvendiskussion hieß: Zeichnen Sie den Graphen der Funktion ...
0 45

Webseite zweisprachig gestalten

Treziman
  • design/layout
  1. 0
    Gunnar Bittersmann
    • internationalisierung
    • sprache
    1. 0
      Gunnar Bittersmann
    2. 0
      Treziman
      1. 0
        Der Martin
        1. 0
          Treziman
          1. 0
            Der Martin
            1. 0
              Treziman
              1. 0
                Der Martin
            2. 0
              Gunnar Bittersmann
              1. 0
                Treziman
                1. 0
                  Der Martin
                2. 0
                  Gunnar Bittersmann
                  1. 0
                    Treziman
                    1. 0
                      Der Martin
                      1. 0
                        Gunnar Bittersmann
                        1. 0
                          Der Martin
                    2. 0
                      Gunnar Bittersmann
                      • meinung
                      1. 0

                        Nuhr: Gibt es intelligentes Leben?

                        Der Martin
                        • humor
                        • meinung
                    3. 0
                      Gunnar Bittersmann
                      1. 0
                        MudGuard
                        1. 0
                          Der Martin
                        2. 0
                          Gunnar Bittersmann
                          • begriff
                          1. 0
                            Treziman
                            1. 0
                              Gunnar Bittersmann
                              1. 0
                                Treziman
  2. 0
    Raketenwilli
    1. 0
      Treziman
      1. 0
        Gunnar Bittersmann
        • internationalisierung
        • php
        • sprache
        1. 0
          Rolf B
          1. 2
            tk
            1. 0
              Rolf B
        2. 0
          MudGuard
        3. 0

          RFC ist „sowas von 1999“

          Raketenwilli
  3. 0
    Rosenköhl
    1. 0
      Gunnar Bittersmann
      • barrierefreiheit
      • formulare
      • html
      1. -2
        Rosenköhl
        1. 0
          Gunnar Bittersmann
          1. 0
            Treziman
            1. 0
              Treziman
              1. 0
                Gunnar Bittersmann
                • php
                1. 0
                  Treziman
                  1. 0
                    Gunnar Bittersmann
                    1. 0
                      Treziman
                    2. 0
                      Der Martin
                      • https
                      • suchmaschinen