2010-02-28 7 views
4

j'ai un dilemme avec les scénarios suivants:Cookies vs Langue de détection (Navigateur vs Localisation) vs Aucun des deux sites multilingues

Dilemme N ° 1

Cookies:

Son bon pour les utilisateurs qui accèdent au site Web depuis leur ordinateur personnel (pas besoin de sélectionner à nouveau la langue préférée), mais que se passe-t-il si une langue est sélectionnée dans un PC public (par exemple une bibliothèque) par quelqu'un, alors cela ne fait pas trop sens parce que quelqu'un d'autre avec des préférences d'une autre langue peut venir.

Dilemme n ° 2

Détection Langue:

Si la page Web détecte la langue de l'emplacement. Que se passe-t-il avec les étrangers vivant dans ce pays? (Est-il plus probable que les étrangers vivant dans un pays utilisent un navigateur qui est défini dans sa langue?).

(je l'ai déjà un menu pour sélectionner la langue, mais je pense que « l'automatisation » est bon.)

qui pourrait être la meilleure solution?

Répondre

2

Ma préférence:

  1. si l'utilisateur est enregistré et avoir la langue de préférence, utiliser cette langue
  2. détection de la langue avec Accept-Language HTTP header 2.5 (emplacement détection de la langue)
  3. langue de secours (par exemple: en_US ou plus adapté à votre public ciblé)

Je ne suis pas sûr que la détection de langue par emplacement est une très bonne idée, pour l'instant, mo st emplacement de partage de périphérique sont un appareil mobile qui peut signifier que l'utilisateur voyage. Il y a aussi un étranger comme tu l'as dit. Et dans mon cas, je suis français, je vis en France et j'ai la préférence du navigateur pour en_US.

+2

Serait upvote si je n'avais pas manqué de voix. Vous n'avez aucune idée à quel point certains sites Web (* toux * pomme * toux * paypal * toux * ebay * toux *) sont; ils voient que j'ai une IP italienne donc ils supposent que 1) je parle italien 2) je veux parler italien, et changer la langue en anglais est vraiment une bataille épique (et nécessite de passer par une douzaine de pages italiennes) –

+0

+1 @Andreas Bonini Je combats la même bataille avec Google (quand je nettoie mon cache et les cookies.) Je suppose que s'ils lisaient la langue du navigateur, il n'y aurait pas de problème. – alexchenco

+0

Que diriez-vous des pages de connexion? – phtrivier

0

Language negotiation est un bon choix pour quand un nouvel utilisateur visite le site la première fois. Mais je voudrais aussi rendre la sélection de la langue aussi facile et transparente que possible en mettant l'identifiant de la langue dans l'URL comme /en/…. Avec une telle URL, la langue sélectionnée est transparente pour l'utilisateur et peut être modifiée si nécessaire. Avec cette URL spécifique à la langue, je fournirais également une URL indépendante de la langue sans l'identifiant de la langue.

+0

Cela ne vaut que pour un très faible pourcentage d'utilisateurs d'Internet, je suppose. Avez-vous des données empiriques à l'appui? – chelmertz

+0

@chlemertz: Je n'ai pas de chiffres, mais pourquoi pensez-vous que la négociation de la langue est un mauvais choix? Pour autant que je sache la plupart des navigateurs utilisent la langue du système d'exploitation par défaut et c'est une hypothèse assez raisonnable. –

+0

@chelmertz: La négociation de la langue est juste pour le cas où la langue n'est pas spécifiée. Mais une fois que l'utilisation a choisi la langue, utilisez-la au lieu de la négociation de la langue. – Gumbo

0

Quel est le problème avec les deux? Utilisez des cookies pour déterminer le premier choix de langue. Avoir une option subtile (peut-être avec un graphique comme un drapeau) présenté pour changer l'option à la langue des lieux/du navigateur au cas où le mauvais est choisi.

0

si nous avons les ingrédients suivants:

  • cookies
  • ip emplacement
  • détection de la langue
  • écran choix de la langue
  • langues disponibles pour le site

alors I (vivre dans un pays de 3 langues avec anglais v rès bien la 4ème langue) serait que ma langue a servi de la façon suivante:

  • si cookie avec lang: show cookieLang
  • si aucun cookie:

    • PICLO = résultat emplacement IP
    • detLang = résultat de la négociation de la langue
    • if (match (par ex. PICLO = BE & detLang = FR) & langues disponibles), puis définissez biscuits & montrer detectedLang
    • autre (par exemple. Pas de match PICLO = IT & detLang = NL) affiche alors l'écran de choix de la langue, ont utilisateur faire le choix, set lang en biscuit & Afficher la langue
    choosen

un grand nombre de sites ici (belgique) vient montrer l'écran de choix de la langue et qui est considérée comme une source d'erreurs solution simple &. Une alternative pourrait être d'enregistrer 2 (ou plus) URL, par ex. mybank.be, mijnbank.be & monbanque.be, tous pointant vers le même site. en fonction de l'URL choisie par l'utilisateur, la langue correcte est automatiquement sélectionnée.