如何获取$_SESSION['core']['last_url']?
的重写网址?
导致$_SESSION['core']['last_url']
像这样返回
目录/产品/视图/ ID / 166 /类别/ 8
我需要的是这个
电子设备/蜂窝电话/ HTC-触摸diamond.html
请帮助......
答案 0 :(得分:2)
上次访问过的网址是以Mage_Core_Controller_Front_Action::postDispatch()
方式设置的。你可以找到这一行
Mage::getSingleton('core/session')->setLastUrl(Mage::getUrl('*/*/*', array('_current'=>true)));
Mage::getUrl()
负责创建一个URL,这就是为什么你不在这里重写的原因。您可以覆盖此方法并检查这是否是类别或产品页面,并根据该页面分配不同的URL,例如:
$url = Mage::getUrl('*/*/*', array('_current'=>true));
if (Mage::registry('current_product') || Mage::registry('current_category')) {
$url = Mage::getBaseUrl() . substr($this->getRequest()->getOriginalPathInfo(), 1);
}
Mage::getSingleton('core/session')->setLastUrl($url);