我想为zend框架提供一些最短url方法的路由。
我有一个这样的路由器
http://mysite.org/en/articles/view/id/34/title/MyUniqueArticleTitleInEnglish
可以很容易地改成
http://mysite.org/en/viewarticle/MyUniqueArticleTitleInEnglish
我想要这样的东西
http://mysite.org/MyUniqueArticleTitleInEnglish
那检查如果唯一标题不可用检查'MyUniqueArticleTitleInEnglish'控制器像默认路由。
我必须做什么?
你可以做的是创建一个路由堆栈,如果在url中只有一个参数,它会在场景3中转到所需的控制器,如果提供了更多参数,它会转到'正常'模块/控制器/动作路由。应该看起来像:
routes.shortest.route = "/:slug"
routes.shortest.defaults.module = public
routes.shortest.defaults.controller = article
routes.shortest.defaults.action = show
routes.default.route = ":module/:controller/:action"
routes.default.defaults.controller = index
routes.default.defaults.action = index
(未经测试但应该可以工作)