2012-07-20 59 views
0

我有这样的问题:Magento:根据条件动态重写URL?

我有一个看起来像这样的默认路由:.../MYAPP/index.php文件/ 配置 /配置/测试/ PRODUCT_ID/51

正如你看到的,这导致了ConfigurationController并且在那里导致了testAction函数。这很好,它应该保持这种方式。我想要改变的是URL的“配置部分”。

所以不是

http://somedomain.de/myapp/index.php/配置 /配置/测试/ PRODUCT_ID/51

我想

http://somedomain.de/myapp/index.php/家具 /配置/测试/ PRODUCT_ID/51

到导致相同的位置(ConfigurationController并在那里到testAction函数)。被更改的部分不是静态的,它是产品的属性集名称。所以,而不是家具,它可以是电脑或其他东西。我已经可以从产品中获得这个,所以我需要的是重写的东西。

想法如何做到这一点?谢谢!

回答

0

在模块的​​3210您可以更改frontend/routers/your_router/args/frontName这将允许您使用不同的名称(如家具)。如果它是一个adminhtml控制器,则必须使用adminhtml路由器,但其余部分是相同的。

+0

是的,我知道我可以有改变它,但它必须是动态的,你知道?那里有家具,除了家具之外不会与其他任何东西一起工作。我必须使它不仅仅是一个frontName。 – user1540714 2012-07-20 12:54:46

-1

您可以使用路由器,就像Magento的确实为CMS页面(在本文的第二部分解释:http://alanstorm.com/magento_dispatch_admin_cms_default_routers

+0

谢谢,第二部分从哪里开始? – user1540714 2012-07-20 13:43:45

+0

它以“CMS路由器对象”开头。 同时,你可以从'Mage_Cms'核心模块和它的'Mage_Cms_Controller_Router'类 – blmage 2012-07-20 13:48:07

+0

得到灵感谢谢,我看看! – user1540714 2012-07-20 13:51:15