想问下大家,多语言网站一般是怎么实现的?
比如前端基本也就是固定的一些文字,定义后基本不变,多套语言的json文件,然后切换,那后端呢?也是多个语言多个数据库,比他发一个文章,有几个语言就需要发布不同语言版本,那感觉这个工作量是不是很大,是不是都是这么实现的?
我理解的是每个语言基本就是一个网站,也就是不同的数据。
想问下大家,多语言网站一般是怎么实现的?
比如前端基本也就是固定的一些文字,定义后基本不变,多套语言的json文件,然后切换,那后端呢?也是多个语言多个数据库,比他发一个文章,有几个语言就需要发布不同语言版本,那感觉这个工作量是不是很大,是不是都是这么实现的?
我理解的是每个语言基本就是一个网站,也就是不同的数据。
多语言网站首先要弄清一个问题:是后台也要多语言还是后台只用一种就行?我理解的是只是前端是多语言,后台是一种。
像我的这样:
http://base.chunten.com
如果是全都要多语言,那就有点麻烦了。
是不是类似于我当时的提问这样的情况? 动态字典的国际化有什么好的方案?
我当时遇到的问题是客制化字典的问题。因为这些字典数据是全球通用的,所以国际化的时候会比较复杂,最后的选择就是一个语言增加一个字段。也就是 label
、label_en
、label_fr
这样的方式。
如果是一些手动维护的UGC内容,那么就是用户输入什么内容展示什么内容。暂时还没有跨地区阅读的需求。如果有的话,可能会介入一个翻译接口来实现。
当然如果是一些企业官网之类的展示性网站,可能会维护多份数据,按照当前选择的语言返回或展示对应的文本内容。
8 回答4.7k 阅读✓ 已解决
6 回答3.4k 阅读✓ 已解决
6 回答2.3k 阅读
5 回答6.3k 阅读✓ 已解决
8 回答3.6k 阅读
3 回答2.4k 阅读✓ 已解决
3 回答2.1k 阅读✓ 已解决
国际化(i18n)库: 用 react-i18next或者vue-i18n,后端用一个数据库,加一个 language 字段来区分不同语言的内容就行,工作量,前端维护多套 JSON 文件还行吧,后端就加一个字段还好吧.
vue-i18n官方文档
react-intl官方文档
react-i18next
思否也有文章:前端通用国际化解决方案