Custom Login module creation in Magento | Milestone Technologies
Magento is an open source ecommerce solution. Magento module development have a certain standard procedures. Let us look in to the new custom module creation.
Create one folder local inside app/code/. This local folder is used for our custom module creation. This folder will not affect any upgrade of magento in future if any.
/app/code |- /core/ |- /community/ |- /local/
Inside this local folder create another folder called as Name Space(Test), inside that folder create another folder, it is usually called as modulename(Mymodule). App/code/local/Test/Mymodule.
app/code/local/Test/Mymodule/
here Test is our Name Space and Mymodule is our modulename.
How to activate the module?
Create a file Test_Mymodule.xml in app/etc/modules/, this will tell Magento to look for and use our custom module.
true
local
create config.xml file in app/code/local/Test/Mymodule/etc
0.1.0 standard Test_Mymodule mymodule mymodule.xml Then create a controller file called as IndexController.php in app/code/local/Test/Mymodule/controllers
inside that file write our indexaction
public function indexAction()
{
$this->loadLayout();
$this->renderLayout();
}
this will load the layout and render the view file
Create login Action function
public function loginAction() { $session = Mage::getSingleton('customer/session'); if ($session->isLoggedIn()) { // is already login redirect to account page return; } $result = array('success' => false); if ($this->getRequest()->isPost()) { $login_data = $this->getRequest()->getPost('login'); if (empty($login_data['username']) || empty($login_data['password'])) { $result['error'] = Mage::helper('onepagecheckout')->('Login and password are required.'); } else { try { $session->login($login_data['username'], $login_data['password']); $result['success'] = true; $result['redirect'] = Mage::getUrl('//index'); } catch (Mage_Core_Exception $e) { switch ($e->getCode()) { case Mage_Customer_Model_Customer::EXCEPTION_EMAIL_NOT_CONFIRMED: $message = Mage::helper('onepagecheckout')->('Email is not confirmed. Resend confirmation email.', Mage::helper('customer')->getEmailConfirmationUrl($login_data['username']));
break;
default:
$message = $e->getMessage();
}
$result['error'] = $message;
$session->setUsername($login_data['username']);
}
}
}
$this->_redirect('customer/account/');
//$this->getResponse()->setBody(Mage::helper('core')->jsonEncode($result));
}
Now let’s create mymodule.xml file in app/design/frontend/default/default/layout/
Create a template file callled as view.phtml in app/design/frontend/default/default/template/mymodule
this is our login form
create a Block file called as Mymodule.php in app/code/local/Test/Mymodule/Block/ the block folder might not be there, we have to create the same*.*
type this url in your browser and check the custom login module http://example.com/mymodule where example.com will be your domain name.
Hit enter to search or ESC to close
https://milestone.tech/tips-and-tricks/custom-login-module-creation-magento/