如何在执行请求的控制器的方法之前调用方法:magento

时间:2010-10-23 10:07:43

标签: events zend-framework magento controller observer-pattern

我想在执行每个控制器的方法之前调用一个方法。我不想在每种方法中调用该方法。我只是想从一个地方调用它,它将在magento中的任何控制器的任何方法之前调用。

我相信我们可以做到这一点,但我不知道如何实现。

请提供您的建议。

希望我们能够解决这个问题,或者某些专家已经解决了这个问题。

感谢。

2 个答案:

答案 0 :(得分:5)

您需要创建一个绑定到controller_action_predispatch事件的Observer。这将在Magento代码库中的每个控制器之前触发。这里有一个有用的wiki page引导您完成整个过程。

答案 1 :(得分:0)

您必须在控制器中创建一个名为preDispatch的方法。此方法在请求的控制器操作之前执行。

类似的东西:

public function preDispatch()
    {
        parent::preDispatch();

        //my code here
    }