更新事件checkout_onepage_controller_success_action上的确认电子邮件

时间:2011-03-15 13:13:55

标签: magento

我正面临一个问题,我想知道你是否可以帮助我..

我需要在以下事件中更新我的确认电子邮件:checkout_onepage_controller_success_action,并且只有在我的更新完成后才发送..

问题是我找不到代码中发送确认电子邮件的位置?它可能不是一个事件的观察者吗?

也许你可以帮我解决这个问题,因为我需要更新这封电子邮件,其中包含一些我收到确认后才能获得的重要信息。

无论如何,我祝你周日愉快,也许你能帮助我,

为您的不同项目提供最佳服务,

安塞尔姆

PS我正在使用magento 1.4.0.2

1 个答案:

答案 0 :(得分:1)

在课程Mage_Sales_Model_Order内部,有一个函数sendNewOrderEmail可以触发订单的电子邮件。这是由我的安装中的结帐模型(Mage_Checkout_Model_Type_Onepage,第741行)调用的。根据您要查找的信息类型,您可能无法保证在框架要发送电子邮件时此信息可用。

如果是这种情况,您可以覆盖sales_order类并更改该函数的内容。您可以覆盖该功能以检查是否存在必要的数据,并仅在数据可用时发送,而不是立即发送电子邮件。如果数据不可用,您可能希望将其添加到某种作业队列中,以便定期检查是否有正确的信息,并在必要时发送。

覆盖sales_order类本身的原因是框架中有几个其他地方调用sendNewOrderEmail函数,并更改它g