Magento Coding Solutions

How to add tab in Customer Information in Magento Admin

Step 1)
Override the file /app/code/core/Mage/Adminhtml/Block/Customer/Edit/Tabs.php,

Inside _beforeToHtml() method, add the following code:

$this->addTab('Custom',array(
    'label' =>Mage::helper('customer')->__('Custom'),
    'class' =>   'ajax',
    'url'   =>   $this->getUrl('*/*/custom',array('_current'=>true)),
));

Step 2) 
Override the file /app/code/core/Mage/Adminhtml/controllers/CustomerController.php,
Add the following code:


public function customAction()
{ $this->_initCustomer();
$this->getResponse()->setBody(
Mage::app()->getLayout()->createBlock('core/template')->setTemplate('custom/customer/tab/custom.phtml')->setCustomerId(Mage::registry('current_customer')->getId())
        ->setUseAjax(true)->toHtml()
);
}


Step 3) 
Create the file /app/code/core/Namespace/ModuleName/Block/Adminhtml/Customer/Edit/Tab/ and create Custom.php,

Add the following source code to the file:

<?php
class Custom_Custom_Block_Adminhtml_Customer_Edit_Tab_Custom extends Mage_Adminhtml_Block_Widget_Form
{
    public function __construct()
    {
        parent::__construct();
        $this->setTemplate('custom/customer/tab/custom.phtml');
    }
}
?>


Step 4)
Now, you need to create a template file.

Go to /app/design/adminhtml/default/default/template/modulename/customer/tab/ and create custom.phtml,

Write your code here.


No comments:

Post a Comment