0
votes

Trying to override magento newsletter module in local coodPool but its not working.

app/etc/modules/Ebiz_Newsletter.xml

<?xml version="1.0"?>
<config>
    <modules>
        <Ebiz_Newsletter>
            <active>true</active>
            <codePool>local</codePool>
        </Ebiz_Newsletter>
    </modules>
</config> 

app\code\local\Ebiz\Newsletter\etc\config.xml

<config>
    <modules>
        <Ebiz_Newsletter> <!--Change Ebiz To Your Module NameSpace and Override to Your Module name-->
            <version>0.1.0</version>
        </Ebiz_Newsletter>
    </modules>
    <frontend>
        <routers>
            <newsletter>
                <args>
                    <modules>
                        <Ebiz_Newsletter before="Mage_Newsletter">Ebiz_Newsletter</Ebiz_Newsletter><!--Change Ebiz To Your Module NameSpace and Override to Your Module name-->
                    </modules>
                </args>
            </newsletter>
        </routers>
    </frontend>
</config>

app\code\local\Ebiz\Newsletter\controllers\SubscriberController.php

<?php
require_once 'Mage/Newsletter/controllers/SubscriberController.php';
class Ebiz_Newsletter_SubscriberController extends Mage_Newsletter_SubscriberController
{
    /**
      * New subscription action
      */

    public function newAction()
    {
        echo 'In local codePool';
        die;
    }

 }

Can you guys please have and let me know the issue as not able to found the issue.

1

1 Answers

4
votes

There are missing xml version and xml comment issue.

 <?xml version="1.0" encoding="utf-8"?>
<config>
        <modules>
            <Ebiz_Newsletter>
                <version>1.0.0</version>
            </Ebiz_Newsletter>
        </modules>
        <frontend>
            <routers>
                <customnewsletter>
                    <use>standard</use>
                    <args>
                        <module>Ebiz_Newsletter</module>
                        <frontName>customnewsletter</frontName>
                    </args>
                </customnewsletter>
            </routers>
        </frontend>
        <global>
            <rewrite>
                <customnewsletter>
                    <from><![CDATA[#^/newsletter/subscriber/#]]></from>
                    <to>/customnewsletter/subscriber/</to>
                </customnewsletter>
            </rewrite>
        </global>
  </config>  

Please delete clear magento cache fully.

Contollers coding

<?php
require_once Mage::getModuleDir('controllers','Mage_Newsletter').DS.'SubscriberController.php';
class Ebiz_Newsletter_SubscriberController extends Mage_Newsletter_SubscriberController
{


public function newAction()
    {
echo "test";
}
}

This coding has been test on my system.Let me know you have any query. Also delete cache from magento dir/var/cachea and clear browser cache.