在Magento中覆盖多个自定义模块中的控制器

1 php magento

如何在两个不同的自定义模块中覆盖相同的magento核心控制器?

小智 7

您可能知道,您可以使用以下xml(在config.xml文件中)轻松覆盖核心控制器:

<frontend>
    <routers>
        <core_module>
            <args>
                <modules>
                    <YouPackage_YourModule before="Mage_CoreModule">YouPackage_YourModule_YourController</YouPackage_YourModule>
                </modules>
            </args>
        </core_module>
    </routers>
</frontend>
Run Code Online (Sandbox Code Playgroud)

您可以根据需要多次覆盖核心控制器,但必须确保此控制器中的操作不同.如果要覆盖相同的操作,则必须使用某些组合操作来解决冲突.无法从不同的控制器调用相同的操作.

  • 在模块B中,您应该在="YouPackage_YourModuleA"> YouPackage_YourModule_YourController </ YouPackage_YourModule>之前编写`<YouPackage_YourModuleB. (4认同)