当产品发送给朋友时,寻找 Mage_Sendfriend 模块的体面观察者。我只是追踪它,并没有看到任何立即有用的东西。模块中编写了一个调度,它实际上是在加载发送给朋友的表单时触发,而不是在实际提交时触发。
问问题
277 次
3 回答
2
查看触发的事件,以下是您可能使用的一些事件:
controller_action_postdispatch_sendfriend_product_sendmail
controller_action_postdispatch_sendfriend
controller_action_postdispatch
在您要用于此事件的函数中:
$controller = $observer->getControllerAction();
... your code here
于 2012-09-10T21:24:43.467 回答
1
您可能不得不求助于观察model_save_after
andmodel_save_before
事件,然后检查$observer->getEvent()->getObject()
它是否是您正在寻找的 Mage_Sendfriend 模型。
一个丑陋的解决方案,但有时事件并不能很好地解决问题。
祝你好运!如果您发现任何好东西,请告诉我们!
编辑:不过,我也建议不要为此观察控制器,因为这不是非常模块化。如果第三方模块为 Sendfriend 功能提供了另一个接口,那么如果您观察控制器操作,它将无法与您的模块一起使用。
于 2012-09-10T21:37:59.657 回答
0
您可以随时随地发送自定义事件。
Mage::dispatchEvent('any_name_for_your_custom_event',
array('key'=>$value,'key'=>$value,'key'=>$value)); //can pass how many values you want in this array.
在您的配置中,您只需让节点查找此事件,并从观察者调用一种方法。这很简单。
于 2012-09-10T23:29:40.213 回答