删除默认商店的商店代码

时间:2012-08-14 06:07:35

标签: php magento magento-1.4 magento-1.5

该网站有2种语言:法语和荷兰语,由2个商店视图表示。法语是默认的。对于我们的SEO工作,我们需要有以下网址:

  1. 法语 - http://www.domain.com/category/product
  2. 荷兰语 - http://www.domain.com/nl/category/product
  3. 系统 - >配置 - >网络 - >将商店代码添加到URL是全部或全部设置。 我们只需要为默认商店关闭它。

    有什么建议吗?

2 个答案:

答案 0 :(得分:2)

我开发了一个扩展程序,允许您直接从Magento Admin隐藏默认商店代码。

enter image description here

此处提供更多信息:https://github.com/jreinke/magento-hide-default-store-code

答案 1 :(得分:0)

经过简短的调查后,我发现它是可能的,但默认情况下没有以编程方式启用。

app / code / core / Mage / Core / etc / system.xml 查看此文件:

// around line 1092 - magento v1.6.2.0
<use_store translate="label">
    <label>Add Store Code to Urls</label>
    <frontend_type>select</frontend_type>
    <source_model>adminhtml/system_config_source_yesno</source_model>
    <backend_model>adminhtml/system_config_backend_store</backend_model>
    <sort_order>10</sort_order>
    <show_in_default>1</show_in_default>
    <show_in_website>0</show_in_website>
    <show_in_store>0</show_in_store>
</use_store>

这三行表示当前范围内的配置可见性

<show_in_default>1</show_in_default>
<show_in_website>0</show_in_website>
<show_in_store>0</show_in_store>

不幸的是,您不能简单地将这些值更改为1,因为升级后的magento会覆盖 app / core 中的所有核心文件,您将失去在那里完成的所有设置。

您可以通过覆盖模块系统来覆盖配置。检查:How to override a Magento administration panel?

我是Magento世界的新人。也许有一种更简单的方法来做到这一点

问候 马尔钦