Fecshop Store

2018-05-24 14:38 更新

Fecshop Store

fecshop是支持多store的,store一般是用來(lái)構(gòu)建多語(yǔ)言站點(diǎn),
可以為每一個(gè)store指定不同的語(yǔ)言和url結(jié)構(gòu),設(shè)置不同的語(yǔ)言,默認(rèn)貨幣,模板等。

1.Store的配置:

您可以在@appfront/config/fecshop_local_services/Store.php中配置Store

示例代碼:

'stores' => [    
    # store key:域名去掉http部分,作為key,這個(gè)必須這樣定義。
    'fecshop.appfront.fancyecommerce.com' => [
        'language'      => 'en_US',      # 語(yǔ)言簡(jiǎn)碼需要在@common/config/fecshop_local_services/FecshopLang.php 中定義。
        'languageName'  => 'English',    # 語(yǔ)言簡(jiǎn)碼對(duì)應(yīng)的文字名稱,將會(huì)出現(xiàn)在語(yǔ)言切換列表中顯示。
        'localThemeDir' => '@appfront/theme/terry/theme01', # 設(shè)置當(dāng)前store對(duì)應(yīng)的模板路徑。關(guān)于多模板的方面的知識(shí),您可以參看fecshop多模板的知識(shí)。
        'thirdThemeDir' => [],  # 第三方模板路徑,數(shù)組,可以多個(gè)路徑
        'currency'      => 'USD', # 當(dāng)前store的默認(rèn)貨幣,這個(gè)貨幣簡(jiǎn)碼,必須在貨幣配置中配置
        'mobile'        => [ # 當(dāng)設(shè)備滿足什么條件的時(shí)候,進(jìn)行跳轉(zhuǎn)。
            'enable'        => true,
            'condition'     => ['phone','tablet'], # phone 代表手機(jī),tablet代表平板
            'redirectUrl'   => 'fecshop.apphtml5.fancyecommerce.com',    # 如果是移動(dòng)設(shè)備訪問(wèn)進(jìn)行域名跳轉(zhuǎn),這里填寫的值為store key
        ],
        # 第三方賬號(hào)登錄配置
        'thirdLogin' => [
            # facebook賬號(hào)登錄
            'facebook' =>[       #fb api配置 ,fb可以一個(gè)app設(shè)置pc和手機(jī)web兩個(gè)域名 
                'facebook_app_id'     => '1849609081926823',
                'facebook_app_secret' => '2e097a6d5a424531770fc05760dd7139',
            ],
            # google賬號(hào)登錄
            "google" => [       #谷歌api visit https://code.google.com/apis/console to generate your google api
                'CLIENT_ID'      => '380372364773-qdj1seag9bh2n0pgrhcv2r5uoc58ltp3.apps.googleusercontent.com',
                'CLIENT_SECRET'  => 'ei8RaoCDoAlIeh1nHYm0rrwO',
            ],
        ]
    ],

需要注意的是您的store key,如果您的首頁(yè)是 http://fecshop.appfront.fancyecommerce.com,那么您的key為 fecshop.appfront.fancyecommerce.com ,如果您的首頁(yè)為 http://fecshop.appfront.fancyecommerce.com/fr,那么您的key為 fecshop.appfront.fancyecommerce.com/fr

您可以為您的每一個(gè)store指定特定的域名,用不同的子域名或用不同的語(yǔ)言路徑的 方式,來(lái)構(gòu)建您的多語(yǔ)言的網(wǎng)站。

2.多語(yǔ)言站點(diǎn)的構(gòu)建方式:

1.子域名的方式構(gòu)建多語(yǔ)言站點(diǎn),譬如:

www.fecshop.com(英文),fr.fecshop.com(法文) de.fecshop.com(德文)

這種方式可以在index.php中設(shè)置 ini_set('session.cookie_domain', '.fancyecommerce.com'); 來(lái)進(jìn)行子域名之間session的共享。

2.url路徑的方式構(gòu)建多語(yǔ)言站點(diǎn),譬如:

www.fecshop.com(英文),www.fecshop.com/fr/(法文),www.fecshop.com/de/(德文)

3.獨(dú)立多域名方式:

www.fecshop.com(英文),www.fecshop.fr(法文),www.fancyecommerce.de(德文)

這種方式,session不能共享,因此購(gòu)物車和登錄信息在切換站點(diǎn)的時(shí)候,需要重新 進(jìn)行登錄。

3.store 組件 的初始化

在Yii2 bootstrap初始化的時(shí)候,都會(huì)執(zhí)行store service的bootstrap方法,進(jìn)行 Fecshop Store 的初始化,F(xiàn)ecshop Store Services的文件路徑為: @fecshop/services/Store.php , 在這個(gè)函數(shù)中進(jìn)行當(dāng)前store的語(yǔ)言,貨幣,模板等等各個(gè)參數(shù)的初始化, 具體詳細(xì)可以參看這個(gè)文件里面的代碼。

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)