ホームページ > バックエンド開発 > PHPチュートリアル > 电商网站如何做多语言架构

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

WBOY
リリース: 2016-06-06 20:28:46
オリジナル
1819 人が閲覧しました

现在有这么一个需求

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

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

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

求大神们给点思路,谢谢

回复内容:

现在有这么一个需求

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

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

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

求大神们给点思路,谢谢

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

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

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

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

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

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

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート