php - Magento - 哪种类型的价格适用新折扣?

标签 php magento

我正在编写一个 Magento 扩展程序,它根据每小时的时间表对产品应用一种新的折扣。我希望在应用所有其他折扣(层级价格、特价等)后将折扣应用到最终价格。

Product 对象的哪个属性保存最终价格?是 getFinalPrice() 吗?得到计算的最终价格()?还有别的吗?

注意:出于我的目的,我想到了“搭载”目录价格规则,但我意识到这行不通,因为这些规则每天都在工作,而我需要每小时安排一次。

最佳答案

getFinalPrice() 是用户在购物车中看到的价格。如果已在产品模型上明确设置,它将返回该值。否则返回产品价格模型方法 getFinalPrice() 的结果。

价格模型将检查产品是否设置了 calculated_final_price 属性。如果不是,它将应用分层定价,然后应用特殊定价,然后设置产品的最终价格。然后它将发送一个事件,让您有机会更改最终价格。最后,它将对产品的自定义选项应用任何价格。

完成您正在尝试做的事情的最佳方法可能是连接到 catalog_product_get_final_price 事件并根据当时的时间设置产品的最终价格。因此,在您的配置中,为 catalog_product_get_final_price 事件设置事件处理程序。您的观察员将有权访问 $this->getProduct() 和 $this->getQty(),您可以在其中更新价格。

关于php - Magento - 哪种类型的价格适用新折扣?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5633006/

相关文章:

php - Yii 加入两个模型

php - 检查文章是否包含团队名称

validation - Magento,翻译验证错误信息

Magento:表 eav_entity 有什么用?

php - Laravel 不显示 index.php

php - 将 OAuth 或公钥 API 用于私有(private) YouTube 应用程序?

php - 通过多个不同名称的复选框从mysql获取数据

php - 将使用 PayPal 支付的 Magento 中不接受的货币转换为美元

magento - 我在管理面板 magento 中添加菜单时遇到问题

mysql - Magento 可以连接到另一个 MySQL 数据库吗?