Friday, August 24, 2012

Magento Override Core Controller


     
Example: Override ProductController.php

First create the following paths and files:

app/code/etc/modules/StickyLizard_CoreOverrides.xml
app/code/local/StickyLizard/CoreOverrides/etc/config.xml
app/code/local/StickyLizard/CoreOverrides/controllers/Catalog/ProductController.php


In app/code/etc/modules/StickyLizard_CoreOverrides.xml:
<config>
    <modules>
        <stickylizard_coreoverrides>
            <active>true</active>
            <codepool>local</codepool>
        </stickylizard_coreoverrides>
    </modules>
</config>

In app/code/local/StickyLizard/CoreOverrides/etc/config.xml:
<config>
    <modules>
        <stickylizard_coreoverrides>
            <version>0.1.0</version>
        </stickylizard_coreoverrides>
    </modules>
    <frontend>
        <routers>
            <catalog>
                <args>
                    <modules>
                        <stickylizard_coreoverrides before="Mage_Catalog">StickyLizard_CoreOverrides_Catalog</stickylizard_coreoverrides>
                    </modules>
                </args>
            </catalog>
        </routers>
    </frontend>
</config>

In app/code/local/StickyLizard/CoreOverrides/controllers/Catalog/ProductController.php
<!--?php
require_once Mage::getModuleDir('controllers', 'Mage_Catalog').DS.'ProductController.php';
class StickyLizard_CoreOverrides_Catalog_ProductController extends Mage_Catalog_ProductController
{
    public function viewAction()
    {
        echo "here I am";
        parent::viewAction();
    }
}
?-->

No comments:

Post a Comment