电商网站如何做多语言架构

发布于 2022-09-01 17:27:12 字数 230 浏览 27 评论 0

现在有这么一个需求

1,一个电商平台要做多语言支持,主要就是商品要支持多种语言,也就是说,有一个商品id为100,默认显示简体中文,当我点击英文版的时候就显示该id为100的英文版本。所有的商品多种语言的商品id是不会变的,会变的只是显示的语言变了而已。

  1. 不能分为多个网站来使用。只能是在一个域名下。

3.数据库应该如何设计?

求大神们给点思路,谢谢

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

睡美人的小仙女 2022-09-08 17:27:12

还是按照原来的中文的信息架构来,

增加一个字段为 lang 语言,
然后增加一个 1对多的 语言关联表 就可以了。

切换语言的时候对关联表进行查询就可以了。

灰色世界里的红玫瑰 2022-09-08 17:27:12

电商网站的多语言版本主要难点在于商品详情页

走过海棠暮 2022-09-08 17:27:12

首先多语言也就是站点本地化,分为2个部分,一部分是页面模板标签,另一部分是内容数据。
首先说页面标签,页面标签就是页面显示的提示信息如产品详情页里的“价格:2300”其中“价格”就是页面标签。
拿PHP举例 定义数组
$detailpageview['cn']['price']='价格'
$detailpageview['en']['price']='price'
在页面的控制器里获取相应的值就可以了
$lang=$_GET['lang'];
$pageview=$detailpageview[$lang];
在魔板上直接写$pageview['price']
这样就实现了根据用户传递的语言类型显示相应的页面标签了。

其次是内容数据 内容数据有2中方法实现,第一种偷懒的方法是使用翻译中间件 吧所有的内容在 页面控制器中通过中间件翻译之后在渲染到模板上,但是这种做法会存在老外看不懂的情况,因为机器翻译都很二。最好的办法就是 在设计产品的时候通过多表实现多语言 建立一个产品主表里边所有内容为主语言,其他从表通过主语言表的主键ID关联 相应语言的产品信息,在页面控制器通过判断lang参数来查询不同的表输出不同的结果。

亣腦蒛氧 2022-09-08 17:27:12

建议设计多语言表,比如product_cn表是存中文信息的,那你英文的可以存product_en表,读取的时候根据不同语言读不同的表,当然你可以把不需要用到多语言的字段抽出来

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文