Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/magento/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Magento:覆盖客户帐户控制器_Magento - Fatal编程技术网

Magento:覆盖客户帐户控制器

Magento:覆盖客户帐户控制器,magento,Magento,嗨,我正在尝试覆盖Mage_Customer_AccountController,以便扩展createPostAction方法。就我的一生而言,我似乎无法做到这一点,它要么抛出一个404页面,这表明它不是文件的正确路径,要么默认为orignal <rewrite> <company_modulename_account> <from><![CDATA[#^/customer/account/#]]></fr

嗨,我正在尝试覆盖Mage_Customer_AccountController,以便扩展createPostAction方法。就我的一生而言,我似乎无法做到这一点,它要么抛出一个404页面,这表明它不是文件的正确路径,要么默认为orignal

<rewrite>
       <company_modulename_account>
           <from><![CDATA[#^/customer/account/#]]></from>
           <to>/modulename/account</to>
       </company_modulename_account>
</rewrite>

/模块名称/帐户

我的控制器位于此处local/company/modulename/controllers/AccountController.php,您可以尝试以下方式:

...   
 <frontend>
        <routers>
            <customer>
                <args>
                    <modules>
                        <company_modulename before="Mage_Customer">Company_Modulename</company_modulename>
                    </modules>
                </args>
            </customer>
        </routers>
    </frontend>
...
以下是有关控制器重写的更多信息:


祝你好运

你一定要推翻它吗?更好的做法是使用事件观察器,在事件发生后监听客户的“保存”,并以解耦、升级的安全方式执行所需步骤。使用Magento 1.7,这只适用于我:公司_Modulename@KevinHorst加1作为评论。Am在1.6.X C.E.调查问题并将更新此问题。在magento 1.9上使用
before=“Mage_Customer”
可以正常工作
require_once 'Mage/Customer/controllers/AccountController.php';
class Company_Modulename_AccountController extends Mage_Customer_AccountController
{
    public function createPostAction(){
        die('Overriden');
    } 
}