我在博客中提供了一些帮助,并在子域中设置了magento多重视图,当我输入url/?___store=store_name
时,它正常运行。
我的意思是我设置了两个商店视图,一个是grabgotech.com另一个是magento1.grabgotech.com
首次在firefox私人窗口或google chrome隐身窗口中,如果我浏览grabgotech.com和magento1.grabgotech.com,则商店视图不会更改
但是如果我使用magento商店视图切换器,那么它会重定向到
http://grabgotech.com/index.php/?___store=default&___from_store=sudipta_store
和
http://magento1.grabgotech.com/index.php/?___store=sudipta_store&___from_store=default
并且商店视图切换工作正常。
我认为这是因为将商店视图值设置为cookie,所以为此我还在每个商店视图的管理面板中设置了cookie域,但仍然没有运气。
如果我浏览到grabgotech.com,那么我希望它能告诉我"默认"商店视图,如果我只浏览magento1.grabgotech.com那么它应该显示sudipta_store
视图,
我不想再使用/?___store=<store name>
。
非常感谢任何帮助。
答案 0 :(得分:1)
您可以通过.htaccess
执行此操作SetEnvIf Host grabgotech\.com MAGE_RUN_CODE=default
SetEnvIf Host magento1\.grabgotech\.com MAGE_RUN_CODE=sudipta_store
这会根据请求的域名将MAGE_RUN_CODE设置为适当的商店视图。
Magento在index.php中读取这些变量并加载指定的商店视图:
/* Store or website code */
$mageRunCode = isset($_SERVER['MAGE_RUN_CODE']) ? $_SERVER['MAGE_RUN_CODE'] : '';
/* Run store or run website */
$mageRunType = isset($_SERVER['MAGE_RUN_TYPE']) ? $_SERVER['MAGE_RUN_TYPE'] : 'store';
Mage::run($mageRunCode, $mageRunType);