B-219 Sec-55 Noida, India
+918010221733

Magento: How to get controller, module, action and router name?

You can easily get controller name, action name, router name and module name in any template file or class file.

IN TEMPLATE FILES

$this->getRequest() can be used in template (phtml) files.

Here is the code:

/**
 * get Controller name
 */
$this->getRequest()->getControllerName();

/**
 * get Action name, i.e. the function inside the controller
 */
$this->getRequest()->getActionName();

/**
 * get Router name
 */
$this->getRequest()->getRouteName();

/**
 * get module name
 */
$this->getRequest()->getModuleName();

/**
 * get Controller name
 */
$this->getRequest()->getControllerName();

/**
 * get Action name, i.e. the function inside the controller
 */
$this->getRequest()->getActionName();

/**
 * get Router name
 */
$this->getRequest()->getRouteName();

/**
 * get module name
 */
$this->getRequest()->getModuleName();

IN CLASS FILES

Here is the code:

/**
 * get Controller name
 */
Mage::app()->getRequest()->getControllerName();

/**
 * get Action name, i.e. the function inside the controller
 */
Mage::app()->getRequest()->getActionName();

/**
 * get Router name
 */
Mage::app()->getRequest()->getRouteName();

/**
 * get module name
 */
Mage::app()->getRequest()->getModuleName();

/**
 * get Controller name
 */
Mage::app()->getRequest()->getControllerName();

/**
 * get Action name, i.e. the function inside the controller
 */
Mage::app()->getRequest()->getActionName();

/**
 * get Router name
 */
Mage::app()->getRequest()->getRouteName();

/**
 * get module name
 */
Mage::app()->getRequest()->getModuleName();

The above functions (getControllerName, getActionName, getRouteName, getModuleName) are present in the class Mage_Core_Model_Url.

You can explore all requests with print_r.

echo “<pre>”; print_r(Mage::app()->getRequest());   
   
echo “<pre>”; print_r(Mage::app()->getRequest());   

(Visited 161 times, 1 visits today)

Leave a reply

You must be logged in to post a comment.