一般的网站的多语言,是怎么做的呢?

2014-06-25 11:53:40 +08:00
 qqjt
我看到一些是直接用子目录,比如/en,这样的方式显示别的语言的页面,有关的干脆是谷歌翻译的结果,有什么好的办法,可以显示同样页面的不同语言版本?
3780 次点击
所在节点    问与答
11 条回复
slixurd
2014-06-25 12:00:42 +08:00
I18N很多都是在XML里面做KV对的储存,一个语言一个文件,然后程序里面不直接使用硬编码的文本,而是使用键值/name来编码,最后再提供一个切换语言的选项就完事了
切换语言可以放在cookie,可以存在session.也可以用url,方式很多
cbsw
2014-06-25 12:06:18 +08:00
你的需求是 l10n
一般成熟框架都带有 l10n 中间件,或者可以很方便的使用一些库,如 python 的 babel 库 http://babel.pocoo.org/
xiaojj
2014-06-25 12:29:13 +08:00
@slixurd 数据库和后台怎么设计呢
9
2014-06-25 12:35:50 +08:00
用 gettext 是比较通用的做法?
kstsca
2014-06-25 12:44:15 +08:00
建议分开 这样对SEO好。。。
jqw1992
2014-06-25 13:34:06 +08:00
要是 WordPress 的wpml就可以做到的了...
qqjt
2014-06-25 14:47:00 +08:00
@slixurd 在html或者php、jsp文件中是怎么标记它的语言的呢?
qqjt
2014-06-25 14:52:11 +08:00
看到了一些资料,我再研究研究
tabris17
2014-06-25 14:57:49 +08:00
程序内部的文字,就是那些写在代码里的文字,我用gettext
视图模板的多语言,就用不同不同文件夹存放,根据当前环境的语言设置,读取不同路径下的模板文件
至于内容的多语言,是读取数据库里的不同记录或不同的表来实现的
AlanZhang
2014-06-25 16:25:56 +08:00
最简单的用数组,然后一个翻译函数: trans('key')
jalen
2016-02-29 17:02:04 +08:00
题主后来是怎么做的呢??

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/119433

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX