【问题标题】:How to call a certain method in each action method of all controller classes in Magento?如何在 Magento 中所有控制器类的每个动作方法中调用某个方法?
【发布时间】:2012-04-06 06:58:20
【问题描述】:

对于我正在开发的 Magento 商店,我必须在每次加载页面时检查某些会话变量。当变量没有预期值时,我需要重定向到某个页面。

不,我想知道如何实现这样的行为。通常我会检查每个控制器的操作方法,但我不想重写每个控制器或其所有基类。

有没有更简单的方法?

【问题讨论】:

    标签: model-view-controller magento redirect controller


    【解决方案1】:

    Magento 的事件架构助您一臂之力!观察controller_action_predispatch 方法。

    编辑:请注意,此事件在 adminhtml 和前端都被调度,因此 Sergy 的回答很重要 - 在适当的区域下配置事件观察器。

    【讨论】:

      【解决方案2】:

      是的,
      在这种情况下,您始终可以使用 magento 事件:
      1.controller_action_postdispatch
      2.controller_action_predispatch
      注意:管理区域也使用相同的事件。

      【讨论】:

      • 一个很好的观点!在前端事件区域下配置您的事件观察器。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-11
      • 2017-11-17
      • 1970-01-01
      • 1970-01-01
      • 2011-09-15
      • 1970-01-01
      相关资源
      最近更新 更多