在网站上实施多语言支持的最佳方法

时间:2018-10-22 07:31:43

标签: javascript coldfusion multilingual

我正在使用波纹管方法实现多语言。

我研究了如何在网站中实现多种语言。并发现实现多种语言的四种方法如下

  1. 简单易用的方法实施google转换器。

  2. 用每种语言创建每个页面,并放置不同的文件夹和子域。(过程昂贵且难以配置)

  3. 使用json或xml作为资源。(难以管理但工作迅速)

  4. 使用db包含每种语言的每一列。(易于管理,但与json和资源相比,它的工作速度很慢)

哪种是最好的实现方式?

请提出是否应该有更好的解决方案。

谢谢。

1 个答案:

答案 0 :(得分:3)

您是否考虑过标签方式?您可以在应用程序范围内拥有一个Struct,其中包含用于特定唯一标签名称和该特定语言的文本:

<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>