電商網站如何做多語言架構

來源:互聯網
上載者:User
現在有這麼一個需求

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參數來查詢不同的表輸出不同的結果。

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.