2013-08-26 114 views
0

是否可以为CakePHP分页url定义自定义URL?定义自定义CakePHP分页url

我需要类似/:slug/:slug2/:slug3/。我应该如何提供这个网址分页?

谢谢!

P.S.如果我使用这个,CakePHP自动在URL中定义控制器和视图,并且 结果为/controller/action/something/ - 我需要禁用url中的控制器和操作。

$this->Paginator->options(array(
    'url' => '/something/' 
)); 

回答

2

使用路由。 http://book.cakephp.org/2.0/en/development/routing.html

对于“内部”链接,您不应该使用字符串类型的URL,因为它们不会工作路由,并且您的链接不会再适用于该应用位于webroot的子目录中的情况。

+0

但我不能告诉这个SEO ... – Gediminas

+0

我不认为你明白:路由将数组映射到任何你的路由规则是字符串类型的URL,反之亦然。在说出一些不起作用或错误的东西之前阅读链接。路由是搜索引擎优化的工具,因为它可以让你生成任何你想要的网址。 – burzum

+1

问题是,CakePHP不允许[/目录/ * /]路由,如果有url/catalog/something - 这个路由接受它,但它不应该,因为最后没有斜线。所以在CakePHP中不可能为像'/ catalog /:slug/*'这样的链接创建路由 - 这个星形会捕获第一条路由中所有更深层次的slu slu。 – Gediminas

2
在你看来

$this->Paginator->options(array('url' => $this->passedArgs)); 

将添加传递给分页链接参数。

+0

这只是增加了更多的东西到网址;它不会替代或删除分页URL中的默认控制器/操作,如OP所要求的那样 – htxryan