Override Magento 1 Controller Function (AccountController.php)

Override Magento 1 Controller Function (AccountController.php)

Override Magento 1 Controller Function (AccountController.php)

1. Make a module file.
app/etc/modules/Vendor_Module.xml

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

2. Make a module configuration file
app/code/local/Vendor/Module/etc/config.xml

<?xml version="1.0"?>
<config>
    <modules>
        <Vendor_Module>
            <version>0.0.1</version>
        </Vendor_Module>
    </modules>
    <frontend>
        <routers>
            <customer>
                <args>
                    <modules>
                        <Vendor_Module before="Mage_Customer">Vendor_Module</Vendor_Module>
                    </modules>
                </args>
            </customer>
        </routers>
    </frontend>
</config>

3. Create the file controller
app/code/local/Vendor/Module/controllers/AccountController.php

<?php
/**
 * Magento
 *
 * NOTICE OF LICENSE
 *
 * This source file is subject to the Open Software License (OSL 3.0)
 * that is bundled with this package in the file LICENSE.txt.
 * It is also available through the world-wide-web at this URL:
 * http://opensource.org/licenses/osl-3.0.php
 * If you did not receive a copy of the license and are unable to
 * obtain it through the world-wide-web, please send an email
 * to [email protected] so we can send you a copy immediately.
 *
 * DISCLAIMER
 *
 * Do not edit or add to this file if you wish to upgrade Magento to newer
 * versions in the future. If you wish to customize Magento for your
 * needs please refer to http://www.magento.com for more information.
 *
 * @category    Mage
 * @package     Mage_Customer
 * @copyright  Copyright (c) 2006-2018 Magento, Inc. (http://www.magento.com)
 * @license    http://opensource.org/licenses/osl-3.0.php  Open Software License (OSL 3.0)
 */

/**
 * Customer account controller
 *
 * @category   Mage
 * @package    Mage_Customer
 * @author      Magento Core Team <[email protected]>
 */
require_once Mage::getModuleDir('controllers', "Mage_Customer").DS."AccountController.php";
class Vendor_Module_AccountController extends Mage_Customer_AccountController{
    /**
     * Change customer password action
     */
    public function editPostAction() { // Function that you must override.
		//Your Custom Code here.
    }
}

Leave a Reply