2012-02-21 72 views
1

我有一個Magento商店,每個網站需要不同的價格,這限制了我爲每個網站使用不同的websites,因爲storesviews不會讓我爲相同商品設置不同的價格。Magento在網站之間共享購物車

但是,我需要能夠讓客戶切換商店,併爲他們目前的籃子留下來。這將包括將價格更新爲新的website中的價格。

我已將Share Customer Accounts設置爲GlobalCatalog Price ScopeWebsite

我也有一個初步的更換:

<?php $websites=Mage::app()->getWebsites();?> 
<?php if(count($websites)>1): ?> 
<fieldset class="store-switcher"> 
    <label for="select-store"><?php echo $this->__('Select Store') ?>:</label> 
    <select id="select-store" onchange="location.href=this.value"> 
    <?php foreach ($websites as $website): ?> 
     <?php $_selected = ($website->getCode() == Mage::app()->getWebsite()->getCode()) ? ' selected="selected"' : '' ?> 
     <option value="<?php echo $website->getDefaultStore()->getBaseUrl()?>"<?php echo $_selected ?>><?php echo $this->htmlEscape($website->getName()) ?></option> 
    <?php endforeach; ?> 
    </select> 
</fieldset> 
<?php endif; ?> 

這是可以實現的?還是回到繪圖板?

信息:Magento ver. 1.6.2.0

另外:本網站我希望在同一個域之間共享車,並具有相同的frontend cookie的值。 (我認爲是SID)。

回答

0

盡我所能告訴它不可能通過設計在網站之間共享購物車。雖然通過在一個網站內存儲工作正常。

0

這是一箇舊的修復程序,用於共享購物車內容(1.3或1.4),我可能不再適用於1.6版本,但可以試用一下。

編輯爲您的主題下面的模板:模板/頁/開關/ stores.phtml

添加到stores.phtml

$sessionID = Mage::getModel('core/session')->getSessionId(); 

粘貼下面我包括在現有的選項,新的選項值值

<option value="<?php if(strpos($_group->getHomeUrl(),"?")===false){ echo $_group->getHomeUrl()."?SID=".$sessionID; }else{ if(strpos($_group->getHomeUrl(),"&SID=")===false){ echo $_group->getHomeUrl()."&SID=".$sessionID; }else{ echo $_group->getHomeUrl();}} ?>" <?php echo $_selected ?>><?php echo $this->htmlEscape($_group->getName()) ?></option> 

然後創建或修改的模板包括靜態鏈接到各個商店來回切換(例如:在報頭中)。此修補程序對商店切換器本身無效,但可以正常使用這些鏈接。

You are in store A. <a href="<?php echo Mage::app()->getStore('yoursecondstorecode')->getUrl() ?>">Goto Store B</a>. 
+0

這不適用於商店而不是網站之間? – 2012-02-22 18:53:18