如何覆盖Magento控制器?

时间:2011-06-16 15:24:36

标签: php magento override controllers

我需要使用服务器端代码检查结帐/购物车页面上优惠券代码的有效性。

Magento已经附带了类似的支票。但是,我需要添加一个以查看用户是否已连接:在Magento中扩展/覆盖该操作的最佳方法是什么?

我知道我可以将控制器PHP文件复制到/app/code/local/文件夹树,但我想知道是否有更好的方法来实现它。

1 个答案:

答案 0 :(得分:11)

除了修改core之外的任何内容在我看来都很好。据说用config.xml创建一个带有控制器目录等的简单模块:

<config>
    <frontend>
        <routers>
            <checkout>
                <args>
                    <modules>
                         <My_Module before="Mage_Checkout">My_Module_Checkout</My_Module>
                    </modules>
                </args>
            </checkout>
        </routers>
    </frontend>
</config>

有关如何扩展前端控制器的更多详细信息,请参见此处: http://prattski.com/2010/06/24/magento-overriding-core-files-blocks-models-resources-controllers/

相关问题