Magento覆盖层次结构

时间:2015-03-19 12:21:26

标签: magento controller override hierarchy

是否有人知道覆盖的层次结构是什么?控制器?

例如:
我想覆盖' local'中的AccountController 但是有一个社区插件也会覆盖这个控制器 也许还有另一个本地模块覆盖了Core AccountController。

如何影响Magento使用我的自定义AccountController?

3 个答案:

答案 0 :(得分:2)

所有三个代码池即。当地,社区和在magento中具有以下优先级的核心

1. local
2. community
3. core

所以Magento首先在本地搜索文件然后搜索社区&在最后一个核心代码池中。

希望这对你有所帮助。

答案 1 :(得分:1)

您需要使用控制器覆盖社区模块AccountController。  还在config.xml中添加代码

<config> 
  <modules> 
        <Extenstion_Communitymodule> 
          <depends><Yourmodule_Modulename/></depends>
         </Extenstion_Communitymodule>
   </modules>
    </config>

答案 2 :(得分:0)

Magento具有三个代码池。

core communitylocal

代码池位于包含所有magento模块的“ app / code”文件夹中。

核心:这是magento的核心模块,请勿尝试编辑此文件夹。

社区:这包含第三方模块。

本地:这是您创建的文件夹,您可以随时对其进行编辑。

如果要覆盖任何文件或控制器,请在本地文件夹中执行。

本地具有最高优先级。 然后社区文件夹 然后核心的优先级最低 但是,如果更改核心文件夹,则在升级magento时,它将影响并失去所有更改。