Лучший подход для реализации многоязычной поддержки на сайте - PullRequest
0 голосов
/ 22 октября 2018

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

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

  1. Простой и легкий способ внедрения Google Translater.

  2. Создание каждой страницы на каждом языкеи поместите другую папку и поддомен. (дорогостоящий процесс и сложный для настройки)

  3. Использование json или xml в качестве ресурсов (сложно управлять, но быстро работает)

  4. Использование базы данных для хранения каждого столбца для каждого языка. (Легко управлять, но это медленная работа по сравнению с JSON и ресурсом))

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

Пожалуйста, предложите, если должно быть лучшее решение.

Заранее спасибо.

1 Ответ

0 голосов
/ 22 октября 2018

Рассматривали ли вы подход с метками?У вас может быть структура в области приложения, которая содержит текст для конкретного уникального имени метки и для этого конкретного языка:

<cfset application.labels['main.search.title']['EN'] = 'Search for widgets' /> 
<cfset application.labels['main.search.title']['FR'] = 'Chercher pour widgets' /> 

Вы можете заполнить структуру из таблицы «меток» в базе данных илидаже текстовый файл, сидящий в каталоге приложений.Функция для заполнения структуры может быть вызвана при запуске приложения или даже проверена, необходима ли она при каждом запросе.Это зависит от производительности и того, как пользователь может менять язык.

Но в любом случае становится просто вывести метку в вашем просмотре страницы с языком в сеансе:

<cfoutput>
    #application.labels['main.search.title'][session.user_lg]#
</cfoutput>
...