gpt4 book ai didi

Magento 路由器 URL - 需要连字符的路径名称

转载 作者:行者123 更新时间:2023-12-02 16:07:45 24 4
gpt4 key购买 nike

假设我使用自定义 Controller ,其 url 路径/前端名称为

/customcategory

好吧,显然如果我有一个名为“TestController.php”和indexAction的 Controller 文件url 路径为

/customcategory/test/index

我想弄清楚的是如何重命名测试 Controller ,或修改配置 xml 文件,这样我就可以从 Controller 文件中获得连字符的 url,例如

/customcategory/test-section/index

我知道,如果我希望 /customcategory 用连字符连接,我只需修改配置文件中的 frontend 标记即可。但是我正在构建的网站将受益于连字符 Controller 路由,即 /customcategory 后面带有关键字的部分,我无法让它工作,也无法在谷歌上找到示例 - 就像那样疯狂可能看起来。

感谢您的宝贵时间。

最佳答案

您想要做的事情可以在自定义模块中使用全局重写。您可以将 /customcategory/* 的所有传入请求传递给特定的 Controller 操作。但您必须管理自己的路由(基于 url 路径的深度)。

例如www.MageIgniter.com/customcategory/path1/path2

配置.xml

<global>
<rewrite>
<fancy_url>
<from><![CDATA[/customcategory\/(.*)/]]></from>
<to><![CDATA[customcategory/index/processroute/tagname/$1/]]></to>
<complete>1</complete>
</fancy_url>
<rewrite>
</global>
<frontend>
<routers>
<tagseo>
<use>standard</use>
<args>
<frontName>customcategory</frontName>
</args>
</tagseo>
</routers>


class MageIgniter_Customcategory_IndexController extends Mage_Core_Controller_Front_Action
{
public function processRoute(){
print_r($requestUri = Mage::app()->getRequest()->getRequestUri()); //path1/path2
print_r($this->getRequest()->getParam('tagname')); // path1
print_r($this->getRequest())
// do you custom logic here base on about request path explode('/', trim($requestUri,'/'))

}
...

有关工作示例,请参阅“产品标签”部分 @ http://www.contempospace.com/bedroom-furniture/wardrobe-closets/custom-closet-systems/isa-closet-system-shelves-hanging-walk-in-reach-in-closet.html

关于Magento 路由器 URL - 需要连字符的路径名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13238428/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com