基于数量的 Magento 每个客户折扣
Magento per customer discount based on qty
我需要根据每个客户的折扣对某些产品应用折扣 table,但部分原因是每个客户 table 中的每件商品都有数量价格优惠基础。
当商品添加到购物车时以及购物车中的数量稍后更新时,最好连接哪个观察者才能应用此折扣?
要在商品添加到购物车时设置代码,您可以使用此观察器
<events>
<checkout_cart_save_before>
<observers>
<checkout_cart_save_before_handler>
<type>model</type>
<class>Vendor_Extension_Model_Observer</class>
<method>AddToCartBefore</method>
</checkout_cart_save_before_handler>
</observers>
</checkout_cart_save_before>
</events>
如果购物车中有任何商品更新,您可以使用此事件。
<events>
<checkout_cart_update_items_before>
<observers>
<checkout_cart_update_items_before_handler>
<class>Vendor_Extension_Model_Observer</class>
<method>UpdateCartBefore</method>
</checkout_cart_update_items_before_handler>
</observers>
</checkout_cart_update_items_before>
</events>
我最终使用的是...
<sales_quote_add_item>
<observers>
<fluidaccess>
<class>Magnesium_Access_Model_Observer_Product</class>
<method>setCartQtyProductDiscount</method>
</fluidaccess>
</observers>
</sales_quote_add_item>
<checkout_cart_update_items_before>
<observers>
<fluidaccess>
<class>Magnesium_Access_Model_Observer_Product</class>
<method>setCartQtyUpdateProductDiscount</method>
</fluidaccess>
</observers>
</checkout_cart_update_items_before>
我使用 sales_quote_add_item 而不是 checkout_cart_save_before,因为我正在即时更新价格,而 cart_save_before 只是没有按照我想要的方式工作。
我需要根据每个客户的折扣对某些产品应用折扣 table,但部分原因是每个客户 table 中的每件商品都有数量价格优惠基础。
当商品添加到购物车时以及购物车中的数量稍后更新时,最好连接哪个观察者才能应用此折扣?
要在商品添加到购物车时设置代码,您可以使用此观察器
<events>
<checkout_cart_save_before>
<observers>
<checkout_cart_save_before_handler>
<type>model</type>
<class>Vendor_Extension_Model_Observer</class>
<method>AddToCartBefore</method>
</checkout_cart_save_before_handler>
</observers>
</checkout_cart_save_before>
</events>
如果购物车中有任何商品更新,您可以使用此事件。
<events>
<checkout_cart_update_items_before>
<observers>
<checkout_cart_update_items_before_handler>
<class>Vendor_Extension_Model_Observer</class>
<method>UpdateCartBefore</method>
</checkout_cart_update_items_before_handler>
</observers>
</checkout_cart_update_items_before>
</events>
我最终使用的是...
<sales_quote_add_item>
<observers>
<fluidaccess>
<class>Magnesium_Access_Model_Observer_Product</class>
<method>setCartQtyProductDiscount</method>
</fluidaccess>
</observers>
</sales_quote_add_item>
<checkout_cart_update_items_before>
<observers>
<fluidaccess>
<class>Magnesium_Access_Model_Observer_Product</class>
<method>setCartQtyUpdateProductDiscount</method>
</fluidaccess>
</observers>
</checkout_cart_update_items_before>
我使用 sales_quote_add_item 而不是 checkout_cart_save_before,因为我正在即时更新价格,而 cart_save_before 只是没有按照我想要的方式工作。