Рассматривали ли вы подход с метками?У вас может быть структура в области приложения, которая содержит текст для конкретного уникального имени метки и для этого конкретного языка:
<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>