Quand il s'agit de la sélection automatique de la langue, j'utilise la méthode mod_rewrite si vous utilisez Apache. Il est plus facile de changer dans un environnement de production qui touche le code de l'application. mod_rewrite extrait le "Accept-Language" de l'en-tête puis applique la règle de réécriture.
RewriteCond% {HTTP: Accept-Language}^fr [NC]
RewriteRule^$/fr/[L, R = 301]
Vous pouvez empiler les conditions de ré-écriture et des règles pour travailler comme une prise toutes les variations de la langue (fr, fr-ca, fr-fr, fr-mo, fr-ch vont tous à fr)
Commander la documentation officielle mod-rewrite
bon exemple de la langue: 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 (quand aucune n'est définie dans l'URL), l'application peut définir une langue de session, écrire des liens avec la langue définie. Il est également bon de permettre aux gens de changer de langue à la volée puisque la plupart des utilisateurs dans les sections locales bilingues (c.-à-d. Au Québec) travaillent dans plus d'une langue. J'ai travaillé avec des programmeurs francophones qui préfèrent lire des documents techniques en anglais.
En matière de traduction de texte, je ferais attention. Si vous effectuez une transaction de commerce électronique, vos clients internationaux (ou les clients locaux ayant des paramètres de navigateur internationaux) peuvent obtenir des informations sur le produit incorrectes ou inexactes, des descriptions et des «termes et conditions».Si vous ne sauvegardez pas le texte de traduction exact de Google dans votre base de données pour chaque traduction à la volée, il n'y a aucun moyen de suivre les engagements de l'utilisateur dans sa langue. Une copie légale non traduite peut être en règle.
J'espère que cela aide.