我正在开发一个Zend Application
,其中我需要slug based URL
为Wordpress
实现其页面/帖子。我已经为static pages
完成了它,它的工作正常我需要。这是不同的场景。我正在尝试路由到相应的模块/控制器。
有两件事
在我的申请中,Category/Subcategory
就在那里。例如:
cat1, cat2
subcat11, subcat12, subcat21, subcat22, subcat23
Products
的 subcategory
。例如:
product1, prdocut2, product3
注意:示例中使用的类别,子类别,产品名称是slug。
网址应为:
对于类别:http://domain.com/cat1
对于子类别:http://domain.com/cat1/subcat11
对于产品:http://domain.com/product1
我为每个人设计了三个控制器。列表显示在他们的Index
操作上。
CategoryController, SubcategoryController, ProductController
如果我在应用程序引导程序中应用路由,则网站索引页面会重定向到“类别”页面。
$categoryrouter = new Zend_Controller_Router_Route('/:categoryslug/',
array(
'module' => 'default',
'controller' => 'category',
'action' => 'index',
'categoryslug' => 'mobiles'
)
);
$chain->chain($categoryrouter);
$router->addRoute('categoryrouter', $categoryrouter);
可能是重复的问题,但我搜索了很多,没有找到适合这个问题的答案。
答案 0 :(得分:0)
有关如何执行此操作的一些信息,请参阅此博客文章:http://tfountain.co.uk/blog/2010/9/9/vanity-urls-zend-framework。您需要两个单独的路线类 - 一个用于类别,一个用于帖子。
您似乎也只在一条路线上使用路线链接,这是不必要的。还要注意术语,你的应用程序有一个“路由器”,它有很多“路由”。