【问题标题】:Magento per customer discount based on qty基于数量的 Magento 每位客户折扣
【发布时间】:2017-02-10 17:22:24
【问题描述】:

我需要根据每位客户的折扣表对某些产品应用折扣,但部分原因是表中的每个项目在每位客户的基础上都有数量价格中断。

当商品添加到购物车并且购物车中的数量稍后更新时,最好使用哪个观察者来应用此折扣?

【问题讨论】:

  • 您还在寻找答案吗?

标签: php magento magento-1.9


【解决方案1】:

要在商品添加到购物车时设置代码,您可以使用此观察者

<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>

【讨论】:

  • 我今天会试一试。谢谢
  • 这个我已经用过了。如果你有的话,你可以试试。
【解决方案2】:

我实际上最终使用的是......

        <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 并没有按照我想要的方式工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-30
    • 1970-01-01
    • 2021-05-18
    相关资源
    最近更新 更多