Php Magento Multipe网站共享购物车会话

Php Magento Multipe网站共享购物车会话,php,magento,Php,Magento,我是magento的新手,我正在尝试在不同的商店和各自的网站之间共享购物车,我已经实现了本文提供的解决方案, ,但有一定的局限性 在我的案例中也是一个问题的限制是,如果从根目录第一次添加到购物车,即使我们切换商店(所有商店都有不同的根目录),它仍保持会话状态,并且从其他商店添加的项目也共享相同的购物车会话。但是,当我从任何其他商店(非默认商店)向购物车添加一些东西,然后移动到其他商店时,每个商店的购物车会话都是独立创建的(这意味着没有共享会话)。现在我想知道我在这里做错了什么,或者我必须做些什么

我是magento的新手,我正在尝试在不同的商店和各自的网站之间共享购物车,我已经实现了本文提供的解决方案, ,但有一定的局限性

在我的案例中也是一个问题的限制是,如果从根目录第一次添加到购物车,即使我们切换商店(所有商店都有不同的根目录),它仍保持会话状态,并且从其他商店添加的项目也共享相同的购物车会话。但是,当我从任何其他商店(非默认商店)向购物车添加一些东西,然后移动到其他商店时,每个商店的购物车会话都是独立创建的(这意味着没有共享会话)。现在我想知道我在这里做错了什么,或者我必须做些什么来分享那里的课程

。我是为MagentoEE1.12上的一个项目开发的,但它也应该在CE上工作。Magento已经在同一网站下的商店视图之间共享购物车。代码背后的主要思想是让magento为所有商店视图共享购物车,而不仅仅是同一网站中的视图。

我不确定它是否适用于任何网站配置,但您可以试一试。

试试这个方法肯定可以,但最好覆盖模型文件

多亏了这篇文章。

我用不同的方式实现了它,它可以正常工作:我使用多个域、存储和单个SSL进行了单次安装

我有一个主网站,我有我的其他网站的所有产品,它与SSL设置。 1.在多商店之间共享客户帐户: 您可以在此处配置此功能:
System->Configuration->Customer Configuration->Share Customer Accounts->Global
2.在Magento多店网站之间共享购物车内容:

Magento为每个商店使用单独的购物车会话。要在签出会话中使用一个网站,您需要修改
Mage\u checkout\u Model\u会话
类。 将此文件:
app/code/core/Mage/Checkout/Model/Session.php
复制到:
app/code/local/Mage/Checkout/Model/Session.php

之后,将以下源代码添加到类中:

class Mage_Checkout_Model_Session extends Mage_Core_Model_Session_Abstract
{
   const CHECKOUT_STORE_ID = 1;

   public function getCheckoutStoreId()
   {
      return self::CHECKOUT_STORE_ID;
   }
使用所有产品和SSL将
CHECKOUT\u STORE\u ID
value
1
更改为您的Magento STORE ID

接下来,在文件中查找所有此类元素:

Mage::app()->getStore()
并将其更改为:

Mage::app()->getStore($this->getCheckoutStoreId())
就这样

清除Magento缓存并检查您的存储。现在,您的Magento将为不同的多域商店网站使用一个购物车。 此解决方案有3个限制:

  • 购物车中的所有价格将来自您选择的商店(使用
    CHECKOUT\u STORE\u ID
    )。所以如果你对不同的产品有不同的价格 在购物车中存储它将不起作用
  • 购物车中的货币将与您选择的商店中的货币相同
  • 用于编辑购物车中项目的链接不会将客户重定向到原始购物车网站

  • 好的,让我试试,但首先我想提到的是,我有不同的商店和不同的网站,我可以为所有商店创建相同的网站(因为我拥有所有的权利),但重要的是,根据我所看到的,默认情况下,magento不会在具有不同根目录的商店之间共享购物车categories@temp-学习。老实说,我从来没有在不同的网站上尝试过使用不同根目录的代码。