如何在我的自定义模块中的magento 1.9中以编程方式应用优惠券代码

问题描述

我有一张优惠券,例如“ 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();
}