gpt4 book ai didi

coldfusion - 多语言网站,如何处理?

转载 作者:行者123 更新时间:2023-12-03 11:16:18 26 4
gpt4 key购买 nike

我有一个网站(Coldfusion),我想在该网站上提供多种语言,但不知道这样做的最佳方法是什么。

我有两个计划:

1:

当然,所有内容(文本)都在数据库中。

如果用户想要不同的语言,用户会点击链接/标志,这会将请求的语言放在 session 变量中,例如: session.language = "es"

在数据库中,我将有 2 列(每种语言都有 1 列),然后选择属于“es”的文本

然后每个页面都会向数据库发出请求以获取登录到 session.language 的文本。

优点:实现起来相对简单

缺点: SEO 明智我认为这可能不是很好。 http://www.domain.com/page.cfm 会给出英文文本或西类牙文本(或其他语言)。 Google 不会添加重复的 URL

2:

用 http://www.domain.com/en/page.cfm 做一些英文的和 http://www.domain.com/es/page.cfm 的英文。

使用 URL 重写规则,URL http://www.domain.com/en/page.cfm 中的语言值实际上是一个页面 http://www.domain.com/page.cfm?language=en

然后 url.language 变量将从数据库中选择正确的语言。

优点:每种语言的唯一 URL。有利于 SEO 和 Google 索引。

缺点:实现起来有点困难。 (我认为)

或者有人有其他/更好的想法吗?

谢谢!!

最佳答案

您应该始终首先检查默认语言的浏览器标题“Accept-Language”(正确的标准方法),并仅提供链接(直观看似正确的方法)作为替代。

在数据库中这样做似乎不是很标准。假设您想使用 MVC 架构(模型- View - Controller )。大多数软件在表示层( View )(例如 html)中使用键,并且与表示层一起,您有语言文件(在 Java 中,这通常是属性文件),它们仅由文件名映射,并且可以通过以下方式进行修改普通用户,没有任何特殊技能,例如没有计算机技能的专业翻译人员。当然你可以把它放在一个数据库中,但它只是更多的工作,并将信息移出表示层。

有各种图书馆可以做到这一点。您应该为您的应用程序找到正常的。请编辑您的问题以包括您用于开发应用程序的内容。 (例如,JSP、Tapestry、Wicket、ASP、PHP 等)例如,如果您想使用 JSP,那么我建议您使用 JSTL 标记库的语言支持。或者,如果您使用的是 Tapestry,我会将您指向 http://tapestry.apache.org/localization.htmlhttp://tapestry.apache.org/tapestry4.1/UsersGuide/localization.html

要查找它,您可以查找术语“国际化”,即“i18n”或“本地化”。 (这些术语的意思不同,但很少有人正确使用它们,所以两者都可以。http://www.w3.org/International/questions/qa-i18n)

关于coldfusion - 多语言网站,如何处理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10122441/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com