我们可以在magento创建多个网站相同的商店视图



我有多个商店网站,我想在url中添加语言功能。我已经为第一个站点(例如www.site-one.com)创建了带有代码'en'的商店视图名称,以便用户可以打开www.site-one.com/en。

现在我想为第二个网站创建相同的,但使用相同的代码为第二个网站(例如www.site-two.com)是给出错误"存储与相同的代码已经存在。"。

是否可以为多个站点创建相同的存储代码,以便用户也可以打开www.site-two.com/en

遗憾的是没有。core_store数据库表中的存储代码有一个唯一的键,改变这个键会破坏Magento中的很多东西。

一个可能的解决方法是不使用"前置存储代码"配置,而是为像http://www.site-one.com/en/这样的存储配置基本url。然后创建一个重写规则(例如使用.htaccess)来将所有来自/en/*的请求定向到/*,等等。

示例配置

商店代码, fr :

RewriteRule ^ (?: en | fr | de)/(. *) $ $ 1 (QSA)

这应该放在所有其他重写规则之前。

OK,我测试了它,确实从Magento得到了404错误,可能是因为它试图评估相对于index.php的请求URI。

通常的方法似乎是实际创建子目录,复制index.php.htaccess,以及
  1. 符号链接所有其他目录(en/app -> app等)
  2. 调整index.php指向正确的Mage.php,并且只配置web base url和子目录,这样js, media和skin文件仍然从原始路径加载。

(1)绝对有效,我以前就这样做过。

相关内容

  • 没有找到相关文章

最新更新