Как установить язык веб-страницы, определяемый языком посетителя

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

  •  22-07-2019
  •  | 
  •  

Вопрос

Кто-нибудь может мне подсказать, как настроить язык веб-страницы на знание IP-адреса посетителя, чтобы он автоматически получал страницу на языке своей страны.Конечно, если этот язык реализован веб-разработчиком.Еще лучше, если я приведу несколько примеров автоматического перевода текста Google.

Итак, как добиться того, чтобы посетитель из США получал текст на моей странице на английском, а посетитель из Франции - на французском?Все это переведено Google с какого-то третьего языка оригинала.

Большое спасибо.

Это было полезно?

Решение

Либо:

  • Угадайте язык по местоположению (которое вы можете получить по их IP-адресу).

  • Посмотрите на значение "accept-language" в заголовке запроса.

Чтобы посмотреть, что находится в заголовке вашего запроса, загляните сюда: http://www.ericgiguere.com/tools/http-header-viewer.html

Другие советы

Когда дело доходит до автоматического выбора языка, я бы пошел по пути mod_rewrite, если вы используете Apache. Это легче изменить в производственной среде, которая касается кода приложения. mod_rewrite получает «Accept-Language» из заголовка затем применяет правило перезаписи.

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

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

Вы можете сложить условия и правила перезаписи, чтобы работать как все языковые варианты (fr, fr-ca, fr-fr, fr-mo, fr-ch все идут на fr)

Оформить официальную документацию по переписыванию модов

хороший пример языка: http://tech-blog.borychowski.com/index.php/2009/03/htaccess/redirect-according-to-browser-language-mod-rewrite-and-http_accept_language/

После того, как вы подтолкнете пользователя к нужному общему языку (если в URL не определено ни одного), приложение может установить язык сеанса, напишите ссылки с установленным языком. Также хорошо разрешать людям менять язык на лету, поскольку большинство пользователей в двуязычных местных жителях (например, в Квебеке) работают на нескольких языках. Я работал с франкоязычными программистами, которые предпочитают читать технические документы на английском языке.

Когда дело доходит до перевода текста в Google, я буду осторожен. Если вы совершаете какую-либо транзакцию электронной торговли, ваши международные клиенты (или местные клиенты с международными настройками браузера) могут получить неверную или неточную информацию о продукте, описания и «условия и положения». Если вы не сохраняете точный текст перевода Google в свою БД для каждого перевода «на лету», то невозможно отследить, что пользователь совершил на своем языке. Некоторые непереведенные юридические копии могут быть в порядке.

Надеюсь, это поможет.

Это плохая идея со смещения.

<Ол>
  • Геолокация по IP-адресу не всегда работает (и не работает, если вы используете TOR)
  • Даже если вы поймете это правильно, что бы вы сделали для таких стран, как Канада или Швейцария?
  • Автоматический перевод в порядке, но было бы лучше сказать кому-то, что у вас нет сайта на его языке - тогда он может предпочесть прочитать его на другом языке.
  • Лицензировано под: CC-BY-SA с атрибуция
    Не связан с StackOverflow
    scroll top