Динамическая страница jQuery лучший способ для многоязычия?

#javascript #jquery #ajax #json #internationalization

#javascript #jquery #ajax #json #интернационализация

Вопрос:

Я начинаю новый проект, и одно из требований заключается в том, что он должен поддерживать более одного языка.

На данный момент я планирую создать приложение на основе jQuery / AJAX, где весь код выполнен на jQuery, и он вызывает только некоторые JSON для получения данных.

Какой был бы наилучший способ реализовать на ней многоязычие?

Я думал о чем-то вроде

 <div>LANG_SOME_STRING</div>
  

и затем, используя какую-либо функцию, замените строку переведенным значением.
Но было бы довольно тяжело запускать его каждый раз, когда что-то происходит на странице.

Все отзывы приветствуются.

Комментарии:

1. вы могли бы рассмотреть возможность использования чего-то вроде i18next.com для клиентской части i18n.

Ответ №1:

Обычно то, что вы делаете, это устанавливаете теги meta language

 <meta http-equiv="content-language" content="en">
  

Тогда в вашей базе данных есть несколько копий материалов на разных поддерживаемых вами языках, которые обычно называются ресурсами.

Ваш серверный код перед рендерингом страниц и ваш код jquery ajax должны включать опцию «прочитать этот язык ресурса» перед загрузкой страницы, чтобы они выбрали правильный язык.

Я могу получить более техническую информацию, как только вы скажете, какой язык вы используете в серверной части

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

Это фантастический учебник по деталям процесса интернационализации PHP

Комментарии:

1. Поскольку это веб-приложение, а не общедоступный веб-сайт, я думал о создании экрана выбора языка в качестве входа в приложение, а затем сохранить его в cookie os, его не всегда запрашивают у пользователя. Atm цель состоит в том, чтобы создать приложение только на 3 языках pt-pt, es и en, поскольку это основные местоположения компаний.

2. Добавлена ссылка для вас, которая объясняет все, что я сказал, во многих деталях.

Ответ №2:

Исходя из опыта, jquery не является библиотекой для такого типа работы… На данный момент существуют лучшие альтернативы, такие как AngularJS, которые очень помогают в решении такого рода проблем. Если бы я мог поговорить с «мимо меня», я бы так и сказал…