我应该在Magento中使用哪些事件?

时间:2011-03-14 15:12:51

标签: php events magento observer-pattern

我想根据某些条件添加新产品时发送邮件。

我应该在哪里放置代码,以便在保存产品时我可以:

  • 获取它及其属性以使用
  • 向某位客户发送电子邮件

提前致谢。

2 个答案:

答案 0 :(得分:2)

Magento已在Mage_ProductAlert功能中包含此功能。您可以扩展该模块以考虑您的额外标准。它挂钩到cron系统而不是同步调用Observer,后者是一个更好的性能模型。

答案 1 :(得分:0)

您可能想要结帐catalog_product_new_action。从未使用它,但它可能对你有用。不确定它是否适用于复制产品。我使用了另一个事件 catalog_product_save_before catalog_product_before_save,它会在产品保存时随时触发。 (使用谷歌搜索magento事件备忘单)。但是两者都可以通过

在观察者功能中获得产品
$product = $observer->getEvent()->getProduct();

然后您可以从产品中获取属性。

$product->getMyAttribute() 

其中my_attribute是您追求的属性。

使用php的mail()函数发送电子邮件应该很简单。如果你想要变得复杂,你可以使用Magento发送交易电子邮件的方式,但除非你需要它可以翻译等,否则你可能不需要它。