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

我们可以在magento中为多个网站创建相同的商店视图吗,magento,multistore,Magento,Multistore,我有多个商店的网站,我想添加在url语言的功能。我已经为第一个站点(例如www.site-one.com)创建了代码为“en”的商店视图名称,以便用户可以打开www.site-one.com/en 现在我想为第二个站点创建相同的代码,但使用第二个站点的相同代码(例如www.site-two.com)会出现错误“已存在具有相同代码的存储” 这是否可以为多个站点创建相同的存储代码,以便用户也可以打开www.site-two.com/en不幸的是,不可能。core\u store数据库表中的存储代码有

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

现在我想为第二个站点创建相同的代码,但使用第二个站点的相同代码(例如www.site-two.com)会出现错误“已存在具有相同代码的存储”


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

不幸的是,不可能。
core\u store
数据库表中的存储代码有一个唯一的键,更改该键将破坏Magento中的许多内容

一种可能的解决方法是不使用“prepend store code”配置,而是为存储配置基本URL,如
http://www.site-one.com/en/
。然后创建一个重写规则(例如使用
.htaccess
)将所有请求从
/en/*
定向到
/*
,依此类推

示例配置 对于门店代码en、fr和de:

重写规则^(?:en | fr | de)/(.*)$$1[QSA]

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

好的,我测试了它,确实从Magento得到了一个404错误,可能是因为它试图计算相对于
index.php
的请求URI

通常的方法似乎是实际创建子目录,复制
index.php
.htaccess
,或者

  • 符号链接所有其他目录(
    en/app->app
    等)
  • 调整index.php以指向正确的
    Mage.php
    ,并仅配置带有子目录的web基本url,以便js、媒体和皮肤文件仍然从其原始路径加载

  • (1) 肯定管用,我以前也做过。(2) 应该可以,但可能还有一些事情需要考虑

    我不擅长htaccess。你能详细说明一下吗。这会很有帮助的。我的错。从标志中删除
    L
    ,这阻止了对原始规则的进一步处理。让我们来看看。符号链接起作用了,但对/customer/account/create这样的magento页面不起作用。这是一个与编程相关的问题吗?是的,如果可以通过编程解决,但我认为这只是htaccess和重写magento的规则。如果我们编辑magento的核心代码,以便可以使用多个网站创建商店视图,则可以通过编程实现。