Magento 清除购物车观察员

Magento Clear Cart Observer

Namespace_Modulename_Model_ObserverI 需要创建一个 event/observer 以在添加产品之前清除购物车。结帐过程将仅包括一种产品。有人可以帮帮我吗?

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

在 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();
    }
}

我的 system.log 没有收到任何错误,但它没有触发。有什么想法吗?

您可能需要解决这个问题:

<class>Namespace_Modulename_Model_Observer</class>

并确保您已加载模块:

app/etc/modules/Namespace_Modulename.xml

别忘了刷新缓存。