目前,在Magento管理员中编辑订单后,我遇到了问题。该页面始终重定向到另一个URL,其基础属于该订单所属的商店视图。此页面需要重新登录管理员。
例如,我有两个基本URL,每个URL属于一个商店视图:
www.example.old.com //old store view (default)
www.example.new.com //new store view
系统使用www.example.old.com
作为默认基本网址。因此,在www.example.old.com
下,我为新商店创建订单并为其开具发票。然后在提交发票时,页面将从
http://www.example.old.com/index.php/admin/sales_order_invoice/new/order_id/1234/
到
http://www.example.new.com/admin/sales_order/view/order_id/1234/
它需要再次登录。
我将重定向代码追溯到Mage_Core_Model_Url
public function getRouteUrl($routePath=null, $routeParams=null)
...
$url = $this->getBaseUrl().$this->getRoutePath($routeParams);
public function getBaseUrl($params = array())
....
if (isset($params['_store'])) {
$this->setStore($params['_store']);
}
....
return $this->getStore()->getBaseUrl($this->getType(), $this->getSecure());
然后我不知道该怎么做。没有参数_store
但似乎Magento根据正在处理的订单确定要运行的商店视图,当它应该保留在整个管理员的相同基本URL时。
答案 0 :(得分:0)
您是否尝试在后端的商店之间启用客户数据共享? 抱歉新手回答,还在学习magento
答案 1 :(得分:0)
原因是Magento将上下文切换到订单存储,因为它需要正确翻译电子邮件模板。
查看类Mage_Core_Model_Template有两个方法_applyDesignConfig和_cancelDesignConfig。第一个函数切换上下文并记住旧的上下文,第二个函数应该全部返回。但是,有一个错误。有关详情,请参阅:http://www.magthemes.com/magento-blog/magento-142-multiwebsite-admin-redirect-problem-quick-workaround/#comment-1084