Magento - 自定义模块嵌套路由器Frontname

时间:2017-01-30 12:09:30

标签: magento module url-routing

我在magento商店(CE-1.9.0.0)中设置了一个自定义模块,配置文件中包含以下内容:

<?xml version="1.0"?>
<config>
    <modules>
        <Company_Custom>
            <version>0.1.0</version>
        </Company_Custom>
    </modules>
    <frontend>
        <routers>
            <custom>
                <use>standard</use>
                <args>
                    <module>Company_Custom</module>
                    <frontName>our-work/digital-work</frontName>
                </args>
            </custom>
        </routers>
        etc...

我知道当我在frontname工作之前设置自定义模块时,当它是单个字符串时(即如果我只想使用digital-work这可以工作,那就不是当我有一个嵌套字符串就像在our-work/digital-work - 这会导致找不到网页。

我是路由器和magento的新手,所以我认为我误解了<frontName>可能有嵌套前缀的可能性吗?

1 个答案:

答案 0 :(得分:0)

frontName不是url,而是仅代表它的第一部分! 通常一个magento动作网址看起来像 domain.com/frontName/controllerName/action 其中frontName是config.xml中指定的名称,controllerNameController.php是具有actionAction函数的控制器 Explained Here

所以frontName是映射到你的模块的部分,例如你可能有一个模块Company_Custom但是你想要不要把网址设置为“company_custom / features / list”,而是你想要“自定义/功能”之类的东西/ list“在这种情况下你应该:

                <args>
                    <module>Company_Custom</module>
                    <frontName>custom</frontName>
                </args>

您可以使用来自管理员的网址重写,以便将自定义网址映射到真实网址