我正在我的模块中本地扩展Mage_Core_Controller_Varien_Router_Standard以访问其match()方法,但当然,从Magento管理员处理它与前台商店的处理方式不同。
在我浪费时间研究这个之前,是否有一种简单的方法可以正确填充Mage_Core_Controller_Request_Http / Zend_Controller_Request_Http的实例,并在正常的前端(读取:非管理员)页面加载(即类别页面,搜索页面,cms页面),但是基于路径的管理区域(假设给定的商店)?
理想情况下,它看起来像:
/** @var $request Zend_Controller_Request_Http */
$request = Mage::getModel('namespace_module/foo')->getHttpRequestByPath($uri, $store);
注意:在示例中,store是可选的,'$ uri'类似于:
不寻找黑客,但不介意朝正确的方向推。我正在使用Magento EE 1.11。
答案 0 :(得分:1)
Mage::app()->getRequest()
将返回Mage_Core_Controller_Request_Http
。从那里你可以调用类似的方法:
->getControllerName();
->getActionName();
使用admin商店时,我假设store_id为Mage_Core_Model_App::ADMIN_STORE_ID
。
这是你想要达到的目标,还是你有不同的目标?