Magento清除购物车观察员

时间:2015-03-08 13:10:45

标签: magento events checkout clear cart

Namespace_Modulename_Model_ObserverI需要创建一个事件/观察者来在添加产品之前清除购物车。结账流程仅包含一种产品。有人可以帮我一把吗?

到目前为止,我有以下代码,但我做错了什么:

在config.xml中我有:

<frontend>
    <events>
        <checkout_cart_product_add_after>
          <observers>
            <clear_cart_observer>
              <type>singleton</type>
              <class>Namespace_Modulename_Model_Observer</class>
              <method>clearCart</method>
            </clear_cart_observer>
          </observers>
        </checkout_cart_product_add_after>
    </events>
</frontend>

另外,我创建了一个包含以下内容的观察者文件:

public function clearCart($observer) 
{   
    foreach( Mage::getSingleton('checkout/session')->getQuote()->getItemsCollection() as $item ) {
        Mage::getSingleton('checkout/cart')->removeItem( $item->getId() )->save();
    }
}

我的系统日志中没有任何错误,但它没有触发。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

您可能需要解决此问题:

<class>Namespace_Modulename_Model_Observer</class>

确保您已加载模块:

app/etc/modules/Namespace_Modulename.xml

不要忘记刷新缓存。