【问题标题】:How to route subcategories and pages in categories?如何在类别中路由子类别和页面?
【发布时间】:2018-03-18 22:08:53
【问题描述】:

我的子类别和类别中的页面具有相似的结构。例如: site.com/cat/page site.com/cat/subcat 我该如何路由它们? URL 仅由字符串组成,没有 ID 和任何数字。

【问题讨论】:

  • 你的问题太笼统了。请提供一些更具体的标签。您使用的是什么 CMS?你的堆栈是多少?
  • 我正在使用 cakePHP 3
  • 抱歉,您的问题不清楚。你有什么错误吗?你试过什么?

标签: cakephp routes cakephp-3.0


【解决方案1】:

非常简单,您的 routes.php 可能如下所示:

$routes->connect(
    '/cat/:page',
    ['controller' => 'Pages', 'action' => 'view'],
    ['page' => '\s+', 'pass' => ['page']]
);

$routes->connect(
    '/cat/:subcat/:page',
    ['controller' => 'Pages', 'action' => 'subcatView'],
    ['subcat' => '\s+', 'page' => '\s+', 'pass' => ['subcat', 'page']]
);

接下来,在您的 PagesController.php 中(实际上您可以使用任何其他控制器/动作,只需在上面的路由中替换您的名称):

public function view($page) {
//i.e. if url is /cat/about then $page === 'about'
}
public function subcatView($subcat, $page) {
// i.e. if url is /cat/subcat/some_page then $subcat === 'subcat' & $page === 'some_page'
}

我强烈建议参考cakephp3 documentation, routes section,它足够清晰,可以帮助您实现任何魔法。

【讨论】:

    猜你喜欢
    • 2013-08-14
    • 2013-05-28
    • 1970-01-01
    • 1970-01-01
    • 2014-11-24
    • 1970-01-01
    • 2017-07-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多