我需要检测到我在onestepcheckout页面上。我目前正在使用:
if ( $_SERVER['REQUEST_URI'] != "/onestepcheckout/"){
但我想知道我是否可以从Magento对象获取信息?
答案 0 :(得分:1)
$currentUrl = $this->helper('core/url')->getCurrentUrl();
在Mage / Core / Helper / Url.php中调用的方法
/**
* Retrieve current url
*
* @return string
*/
public function getCurrentUrl()
{
$request = Mage::app()->getRequest();
$url = $request->getScheme() . '://' . $request->getHttpHost() . $request->getServer('REQUEST_URI');
return $url;
// return $this->_getUrl('*/*/*', array('_current' => true, '_use_rewrite' => true));
}
由于上述内容可能会返回更完整的网址而不是您可以使用的URI:
Mage::app()->getRequest()->getActionName();
并获取正在调用的控制器操作的操作名称。
答案 1 :(得分:0)
您可以在IF条件中检查控制器名称。
if(Mage::app()->getRequest()->getControllerName() != 'onestepcheckout') {
同样,您也可以获取动作名称,模块名称等。
看一下这篇文章: - Magento: How to get controller, module, action and router name?
希望这会有所帮助。感谢。