Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/magento/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
清除magento中的购物车事件_Magento_Magento 1.7 - Fatal编程技术网

清除magento中的购物车事件

清除magento中的购物车事件,magento,magento-1.7,Magento,Magento 1.7,有人能告诉我,当用户单击“清除购物车”按钮时,要触发的正确事件是什么。我想根据该事件删除一些信息。目前我正在使用observer存储有关“添加到购物车”事件的信息。谢谢。1.7.0.2中没有任何事件 // app/code/core/Mage/Checkout/controllers/CartController.php:389 Mage_Checkout_CartController::updatePostAction() // app/code/core/Mage/Checkout/con

有人能告诉我,当用户单击“清除购物车”按钮时,要触发的正确事件是什么。我想根据该事件删除一些信息。目前我正在使用observer存储有关“添加到购物车”事件的信息。谢谢。

1.7.0.2中没有任何事件

// app/code/core/Mage/Checkout/controllers/CartController.php:389
Mage_Checkout_CartController::updatePostAction()

// app/code/core/Mage/Checkout/controllers/CartController.php:441
Mage_Checkout_CartController::_emptyShoppingCart()

// app/code/core/Mage/Checkout/Model/Cart.php:489
Mage_Checkout_Model_Cart::truncate()

// app/code/core/Mage/Sales/Model/Quote.php:837
Mage_Sales_Model_Quote::removeAllItems()

您可以在结账前收听“购物车保存”并检查购物车是否为空以及您的设置是否已设置,如果是,请将其删除。

1.7.0.2中没有任何事件

// app/code/core/Mage/Checkout/controllers/CartController.php:389
Mage_Checkout_CartController::updatePostAction()

// app/code/core/Mage/Checkout/controllers/CartController.php:441
Mage_Checkout_CartController::_emptyShoppingCart()

// app/code/core/Mage/Checkout/Model/Cart.php:489
Mage_Checkout_Model_Cart::truncate()

// app/code/core/Mage/Sales/Model/Quote.php:837
Mage_Sales_Model_Quote::removeAllItems()

您可以在签出前收听“购物车保存”并检查购物车是否为空以及您的设置是否已设置,如果是,请将其删除。

我最近在一个自定义模块中实现了此功能

controller_action_predispatch_checkout_cart_updatePost
此事件在按下clear cart时准确获取呼叫

在observer中,您可以检查是否为空购物车调用了该方法:

$post=Mage::app->getRequest->getPost'update\u cart\u action';//获得价值 如果$post==“空车”{ //执行逻辑 $quote=Mage::helper'checkout/cart'->getQuote;//quote $allQuoteItems=$quote->getAllItems;//报价项 //执行代码 }


希望有帮助。

我最近在一个自定义模块中实现了这一点

controller_action_predispatch_checkout_cart_updatePost
此事件在按下clear cart时准确获取呼叫

在observer中,您可以检查是否为空购物车调用了该方法:

$post=Mage::app->getRequest->getPost'update\u cart\u action';//获得价值 如果$post==“空车”{ //执行逻辑 $quote=Mage::helper'checkout/cart'->getQuote;//quote $allQuoteItems=$quote->getAllItems;//报价项 //执行代码 }

希望有帮助。

通用方法

config.xml

<events>
    <sales_quote_save_after>
        <observers>
            <module_model_observer>
                <type>singleton</type>
                <class>module/observer</class>
                <method>salesQuoteSaveAfter</method>
            </module_model_observer>
        </observers>
    </sales_quote_save_after>
</events>
通用方法

config.xml

<events>
    <sales_quote_save_after>
        <observers>
            <module_model_observer>
                <type>singleton</type>
                <class>module/observer</class>
                <method>salesQuoteSaveAfter</method>
            </module_model_observer>
        </observers>
    </sales_quote_save_after>
</events>

您是如何访问购物车中的产品/报价项目的?您可以获得它们,我已相应地更新了答案。您是如何访问购物车中的产品/报价项目的?您可以获得它们,我已相应地更新了答案。小评论,Magento 1.7中引入了Mage_Sales_Model_Quote::removeAllItems方法,在早期版本中没有。Magento 1.7中引入了Mage_Sales_Model_Quote::removeAllItems方法,在早期版本中没有。