如何覆盖Magento中的corefile(控制器文件)?

如何覆盖Magento中的corefile(控制器文件)?,magento,Magento,我必须在控制器文件中添加一个自定义函数。我没有更改核心文件,而是将此文件放在本地文件夹中(遵循相同的目录结构),并添加了自定义代码。但Magento仍在使用旧的控制器文件。如何调用此新控制器文件?仅供参考,与块/助手/模型覆盖不同,复制粘贴具有相同文件夹层次结构的app/code/local文件夹中的控制器文件时,控制器覆盖不起作用 要覆盖控制器,请遵循以下xml块: <config> <frontend> [1] <routers>

我必须在控制器文件中添加一个自定义函数。我没有更改核心文件,而是将此文件放在本地文件夹中(遵循相同的目录结构),并添加了自定义代码。但Magento仍在使用旧的控制器文件。如何调用此新控制器文件?

仅供参考,与块/助手/模型覆盖不同,复制粘贴具有相同文件夹层次结构的app/code/local文件夹中的控制器文件时,控制器覆盖不起作用

要覆盖控制器,请遵循以下xml块:

<config>
    <frontend> [1]
        <routers>
            <checkout> [2]
                <args>
                    <modules>
                        <yourModule before="Mage_Checkout">Namespace_Module_Overwrite_Checkout</yourModule> [3]
                    </modules>
                </args>
            </checkout>
        </routers>
    </frontend>
</config>

[1]
[2]
名称空间\模块\覆盖\签出[3]
哪里 [1] 取决于控制器区域“前端”或“管理” [2] 要覆盖的模块的路由器节点(在该模块的config.xml中查找) [3] 标记可以是任何内容,它在节点中必须是唯一的。 您的\u模块\u覆盖\u签出(映射到目录) 您的/模块/控制器/覆盖/签出/ 希望这有帮助。 快乐的电子商务!!
您是否已为模块添加config.xml并将新模块设置为活动?是的,我已添加config.xml,但我不知道如何激活新模块? Where, [1] Depending on the controllers area "frontend“ or "admin“ [2] Router node of the module to be overridden (look it up in the config.xml of that module) [3] The tag can be anything, it must be unique within the node. Your_Module_Overwrite_Checkout (is mapped to directory) Your/Module/controllers/Overwrite/Checkout/ Hope this helps. Happy E-Commerce!!