Comment définir la langue de la page Web déterminée par la langue du visiteur

StackOverflow https://stackoverflow.com/questions/1826603

  •  22-07-2019
  •  | 
  •  

Question

Quelqu'un peut-il me dire comment définir la langue d'une page Web sur la connaissance de l'adresse IP du visiteur afin qu'il obtienne automatiquement une page dans la langue de son pays? Bien sûr, si ce langage est implémenté par un développeur Web. Mieux encore, je sème quelques exemples de traduction automatique du texte par Google.

Alors, comment atteindre ce visiteur des États-Unis obtient le texte sur ma page en anglais et visiteur de la France en français. Tout cela traduit par Google à partir d'une troisième langue d'origine.

Merci beaucoup.

Était-ce utile?

La solution

Soit:

  • Devinez la langue de l'emplacement (que vous pouvez obtenir depuis leur adresse IP).

  • Consultez l'en-tête de la requête " accept-language " valeur.

Pour en savoir plus sur l'en-tête de votre demande, consultez la section http: //www.ericgiguere.com/tools/http-header-viewer.html

Autres conseils

En ce qui concerne la sélection automatique de la langue, je choisirais la voie mod_rewrite si vous utilisez Apache. Il est plus facile de changer de code d'application dans un environnement de production. mod_rewrite saisit le " Accept-Language " hors de l'en-tête applique ensuite la règle de réécriture.

RewriteCond% {HTTP: Accept-Language} ^ fr [NC]

RewriteRule ^ $ / fr / [L, R = 301]

Vous pouvez empiler les conditions et les règles de réécriture pour fonctionner comme une capture de toutes les variations linguistiques (fr, fr-ca, fr-fr, fr-mo, fr-ch, allez tous en fr)

Consultez la documentation officielle sur la réécriture de mods

bon exemple de langage: http://tech-blog.borychowski.com/index.php/2009/03/htaccess/redirect-according-to-browser-language-mod-rewrite-and-http_accept_language/

Une fois que vous avez poussé l'utilisateur vers la bonne langue générale (aucune valeur n'est définie dans l'URL), l'application peut définir une langue de session et écrire des liens avec la langue définie. Il est également bon de permettre aux gens de changer de langue à la volée car la plupart des utilisateurs de sections locales bilingues (le Québec, par exemple) travaillent dans plusieurs langues. J'ai travaillé avec des programmeurs francophones qui préfèrent lire des documents techniques en anglais.

En ce qui concerne la traduction de texte par Google, je ferais attention. Si vous effectuez une transaction de commerce électronique, vos clients internationaux (ou les clients locaux disposant de paramètres de navigateur internationaux) peuvent obtenir des informations, descriptions et "conditions générales" incorrectes ou inexactes sur le produit. Si vous n'enregistrez pas le texte exact de la traduction Google dans votre base de données pour chaque traduction à la volée, il est impossible de suivre les engagements de l'utilisateur dans leur langue. Une copie légale non traduite peut être utile.

J'espère que cela vous aidera.

Ceci est une mauvaise idée de l'offset.

  1. La géolocalisation sur une adresse IP ne fonctionne pas toujours (et ne fonctionne pas si vous utilisez TOR)
  2. Même si vous comprenez bien, que feriez-vous pour des pays comme le Canada ou la Suisse?
  3. La traduction automatique est correcte, mais il serait préférable de dire à quelqu'un que le site ne correspond pas à sa langue. Il est alors préférable de le lire dans une autre langue.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top