在CakePHP中保留父段塞
我正在CakePHP中尽可能高效地试验SEO友好的URL,我已经设法使用了当前的格式,除了第一个使用函数索引的示例外,每个示例都使用函数视图$slug /类别/ /类别/书籍/ /类别/书籍/it和计算/ 但是如果IT和计算有一个子类Web开发呢?我希望URL变成: /类别/书籍/it和计算/web开发/ 我不知道如何在不创建太多路由的情况下执行此操作。这是我到目前为止的路线代码: 路由器::连接“/categories/”,数组“controller”=>“categories”,“action”=>“index” 路由器::连接“/categories/:slug”, 数组“控制器”=>“类别”,“操作”=>“视图”, 数组'pass'=>数组'slug' ; 路由器::连接“/categories/:parent/:slug”, 数组“控制器”=>“类别”,“操作”=>“视图”, 数组'pass'=>数组'parent','slug' ; 任何帮助都将不胜感激 问候 斯蒂芬在CakePHP中保留父段塞,cakephp,routes,cakephp-1.3,slug,custom-routes,Cakephp,Routes,Cakephp 1.3,Slug,Custom Routes,我正在CakePHP中尽可能高效地试验SEO友好的URL,我已经设法使用了当前的格式,除了第一个使用函数索引的示例外,每个示例都使用函数视图$slug /类别/ /类别/书籍/ /类别/书籍/it和计算/ 但是如果IT和计算有一个子类Web开发呢?我希望URL变成: /类别/书籍/it和计算/web开发/ 我不知道如何在不创建太多路由的情况下执行此操作。这是我到目前为止的路线代码: 路由器::连接“/categories/”,数组“controller”=>“categories”,“actio
// in routes.php
Router::connect('/categories/:row:lastslash',array('controller' => 'settings', 'action' => 'show',),array(
'pass'=>array('row'),
'row'=>'.*?',
'lastslash'=>'\/?'
));
//in controller
function show($row = ""){
if($row){
$categories = split('/',$row);
?><pre><? print_r($categories);?></pre><?die();
}else{
die('do something else');
}
}
/类别/
结果:
do something else
Array
(
[0] => books
)
/类别/书籍
结果:
do something else
Array
(
[0] => books
)
/类别/
结果:
do something else
Array
(
[0] => books
)
/类别/书籍
结果:
do something else
Array
(
[0] => books
)
我也希望这个问题能得到更多的答案。对n级子类别有效的东西。上面的方法行不通,我想你误解了这个问题。网站需要在URL中保留完整的历史记录,就像面包屑一样/categories/books/computing/web development/cakephp/etct这看起来正是我想要的,我现在不能尝试,但我会稍后再尝试。非常感谢苏金森:我很想给你投票,但是我对这个网站太陌生了。我也希望这个问题能得到更多的答案。对n级子类别有效的东西。上面的方法行不通,我想你误解了这个问题。网站需要在URL中保留完整的历史记录,就像面包屑一样/categories/books/computing/web development/cakephp/etct这看起来正是我想要的,我现在不能尝试,但我会稍后再尝试。非常感谢苏金森:我很想给你投票,但是我对这个网站太陌生了。干杯