【发布时间】:2012-01-29 05:56:32
【问题描述】:
我需要知道每当产品的库存水平发生变化时调度的事件的名称。
到目前为止,我已经能够使用 cataloginventory_stock_item_save_after,但是这似乎只有在我在后端更改库存水平时才会发送。
如果我在后端创建订单,库存水平会下降,但不会发送此事件。
我也不确定当有人在前端订购产品时使用哪个事件。
我正在使用 magento 1.6。
提前感谢您提供的任何帮助。
【问题讨论】:
标签: magento
我需要知道每当产品的库存水平发生变化时调度的事件的名称。
到目前为止,我已经能够使用 cataloginventory_stock_item_save_after,但是这似乎只有在我在后端更改库存水平时才会发送。
如果我在后端创建订单,库存水平会下降,但不会发送此事件。
我也不确定当有人在前端订购产品时使用哪个事件。
我正在使用 magento 1.6。
提前感谢您提供的任何帮助。
【问题讨论】:
标签: magento
正如 Alan Storm 在他对这个问题的回答中所建议的那样,您总是可以看到触发了哪些事件: Is there an event for customer account registration in Magento?
它将为您提供执行操作时触发的所有事件...只需确保仅在实际需要时打开/关闭它,否则您最终会遇到大量事件进行拖网通过
【讨论】:
看看乔纳森戴在这里给我的答案:Detect inventory change
查看app/code/core/Mage/CatalogInventory/Model/Stock/Item.php 并注意$_eventPrefix 设置为cataloginventory_stock_item。这意味着您可以使用this blog post 中详述的通用对象保存事件来注册观察者,例如cataloginventory_stock_item_save_after 并检查对象的值。
【讨论】: