7 Stimmen

Sprache der Website: Browsergebietsschema oder IP-Adresse verwenden

Wir sind dabei, für eine Website eine automatische Länder-/Sprachenauswahl zu implementieren, lassen dem Benutzer aber immer noch die Möglichkeit, sie zu ändern.

Wenn der Nutzer die Website über eine Domäne mit einer länderspezifischen TLD aufruft, wird ihm zunächst standardmäßig die richtige Sprache angezeigt. Die Frage ist jedoch, wie die Logik aussehen soll, wenn sie von einer generischen/internationalen TLD wie .com kommen. Sollten wir das Land bevorzugen, das wir über ihre IP-Adresse erhalten, oder sollten wir das Gebietsschema ihres Browsers verwenden? Wenn beides, in welcher Reihenfolge?

Ich habe dabei an diese Hierarchie gedacht:

  1. Verwenden Sie die Benutzerauswahl, wenn sie zuvor geändert wurde. Wenn er nie explizit vom Benutzer festgelegt wurde:
  2. Hostname TLD verwenden. Wenn er generisch ist (.com):
  3. Browsergebietsschema verwenden. Wenn kein Gebietsschema eingestellt ist oder keine entsprechende Sprachversion für dieses Gebietsschema verfügbar ist:
  4. IP-Adresse verwenden. Wenn für das ermittelte Land keine entsprechende Sprachversion verfügbar ist:
  5. Verwenden Sie Englisch.

1voto

annakata Punkte 72408

Der Abgleich von IP-Adressen würde eine (teure) Geo/Ip-Lookup-Datenbank, eine Verpflichtung und eine Infrastruktur zur Pflege dieser Datenbank erfordern, hat erhebliche Probleme mit blockierten IPs und liefert letztendlich nicht einmal die gewünschten Informationen, da es keine 1:1-Beziehung zwischen Land und Sprache (offiziell: Kanada oder inoffiziell: Vereinigte Staaten) gibt, nicht einmal annähernd.

Ich ziehe es vor, dass die Cookie-Präferenz auf TLD/Unterdomäne (oder lokale Einstellungen, bei denen die TLD sprachunabhängig ist) reduziert wird.

0voto

ChrisF Punkte 130622

Ich persönlich würde auf der Landing Page, die nur eine Sprachauswahlseite ist und auf der der Nutzer eine Sprache auswählen muss, um fortzufahren, einfach die Sprache der Hauptzielgruppe wählen. Dadurch wird ein Cookie gesetzt, so dass der Nutzer beim nächsten Besuch (mit demselben Browser und auf demselben Computer) auf die richtige Sprache weitergeleitet wird.

Dafür habe ich mehrere Gründe.

  1. Es ist einfacher zu programmieren - keine Überprüfung von IP-Bereichen oder Browser-Lokalisierung usw. Weniger Code bedeutet, dass weniger schief gehen kann.
  2. Sie gehen nicht von einer Annahme über den Benutzer aus. Er könnte zum Beispiel ein Amerikaner sein, der in Japan eine auf Deutsch eingestellte Maschine benutzt.
  3. Es ist wahrscheinlich, dass es richtig ist :)

0voto

Colin Coghill Punkte 1521

Sie müssen auch berücksichtigen, dass Personen, die über Web-Proxys kommen, nicht nicht in dem Land sind, in dem ihre scheinbare IP-Adresse liegt.

Ich bekomme eine Menge Werbung für Unternehmen aus San Diego, obwohl ich in Neuseeland bin, weil ich dort einen Web-Proxy benutze.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X