问题描述
我有一张优惠券,例如“ DISC50” 我想在magento中创建此优惠券并在magento购物车页面中应用它,如何执行此操作?
有人可以给我提供确切的观察者事件和功能的示例吗?
解决方法
我正在回答您与观察员以编程方式应用优惠券代码的问题。
以下是观察者事件名称,您可以根据自己的使用来触发/处理事件(要应用优惠券代码):
- sales_quote_save_before(最推荐)
- sales_quote_remove_item
- sales_quote_add_item
- sales_quote_product_add_after
- sales_quote_item_collection_products_after_load
- checkout_cart_add_product_complete
- checkout_cart_save_before
- checkout_cart_save_after
这是应用优惠券代码的代码段。
function appplyDiscoCoupon($observer) {
$quote = $observer->getEvent()->getQuote();
$quote->getShippingAddress()->setCollectShippingRates(true);
$quote->setCouponCode($couponCode)->setTotalsCollectedFlag(false)->collectTotals();
$quote->save();
}