【问题标题】:Overwrite CompareController覆盖比较控制器
【发布时间】:2012-03-25 18:19:01
【问题描述】:

我尝试覆盖 Core CompareController。不知何故,我没有完成它。 我在 Magento 网站上做了一些研究:http://www.magentocommerce.com/wiki/5_-_modules_and_development/0_-_module_development_in_magento/how_to_overload_a_controller

但它并没有帮助覆盖控制器。

本地/WP/Compare/etc/config.xml

<?xml version="1.0"?>
<config>
    <modules>
        <WP_Compare>
            <version>0.1.0</version>
        </WP_Compare>
    </modules>
    <global>
        <rewrite>
            <WP_Compare_Catalog_Product_Compare>
                <from><![CDATA[#^/catalog/product/compare/#]]></from>
                <to>/compare/catalog/product/compare/</to>
            </WP_Compare_Catalog_Product_Compare>
        </rewrite>
    </global>
</config>

local/WP/Catalog/controllers/Product/CompareController.php

<?php

require_once "Mage/Catalog/controllers/Product/CompareController.php";
class WP_Compare_Catalog_Product_CompareController extends Mage_Catalog_Product_CompareController
{

    public function addAction()
    {
        echo 'Lets GO!';
    }

}

?>

有人可以帮我解决这个问题吗?

谢谢。

克。 地法

【问题讨论】:

    标签: magento rewrite


    【解决方案1】:

    这是我的问题的解决方案。

    <?xml version="1.0"?>
    <config>
        <modules>
           <WP_Compare>
               <version>0.1.0</version>
           </WP_Compare>
        </modules>
        <frontend>
            <routers>
                <catalog>
                    <use>standard</use>
                    <args>
                        <modules>
                            <WP_Compare before="Mage_Catalog">WP_Compare_Catalog</WP_Compare>
                        </modules>
                    </args>
                </catalog>
            </routers>
        </frontend>
    </config>
    

    【讨论】:

    • 正在将核心控制器覆盖重写到模块中,这点亮了模块,让我转储那些邪恶的核心覆盖。作为补充说明,这是 Prattski 关于覆盖 1.4.x.x 及更高版本的各种块的条目:prattski.com/2010/06/24/…
    【解决方案2】:

    您可能需要在 etc.xml 中执行类似的操作:

     <frontend>
      <routers>
         <customer>
            <args>
               <modules>
                  <Mymodule_Customer before="Mage_Customer">Mymodule_Customer</Mymodule_Customer>
               </modules>
            </args>
         </customer>
      </routers>
    </frontend>
    

    【讨论】:

    • 您可以具体提及。
    猜你喜欢
    • 2021-09-13
    • 1970-01-01
    • 1970-01-01
    • 2015-07-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多