cakephp分页更改网址,使他们更友好的seo

时间:2013-11-11 13:19:45

标签: php url cakephp seo

我正在使用这种语法:

<ul>
<?php echo $this->Paginator->prev($this->Html->image('arrow_left.png', array('border' => 0, 'tag'=>'li')), array('escape'=>false, 'tag'=>'li')); ?>
<?php echo $this->Paginator->numbers(array('separator' => '', 'tag'=>'li')); ?>
<?php echo $this->Paginator->next($this->Html->image('arrow_right.png', array('border' => 0, 'tag'=>'li')), array('escape'=>false, 'tag'=>'li')); ?>
</ul>

创建了像

这样的链接
<li>
<a href="/mycontrollername/search/cat:1/page:4?url=slugged_url">4</a>

有没有办法,我可以在网址中删除控制器和操作,而是使用url参数?

我的意思是代替获取

之类的链接
http://domain.com/mycontrollername/search/cat:1/page:2?url=slugged_url

我想得到像

这样的东西
http://domain.com/slugged_url/cat:1/page:2

这可能吗? 如果是,怎么样?

每页结果都有同样的问题:

<?php
$sortDir = ($this->Paginator->sortDir() == 'asc') ? $this->Paginator->sortDir(): 'desc';
$text = ($sortDir == 'asc')? __('aufsteigend', true):__('absteigend', true);
echo $this->Paginator->sort('OBJ_PREIS', $text, $options = array('escape' => false, 'direction'=>'DESC', 'class' => 'asc'))`;
?>

我可以更改那里的网址吗?

请指教!

谢谢!

1 个答案:

答案 0 :(得分:0)

这可以使用路线。路由会将URL重写为“漂亮”。

查看正式的CakePHP书籍。 It has a complete chapter只是路由。

这本书作为你可以用路线做的不同事情的大量例子。