如何使codeigniter路由与分页一起工作

时间:2013-12-04 12:45:11

标签: codeigniter routing paging

对于像魅力一样的新闻,我有以下路线:

$word5 = urlencode('mygreek-keyword-here');
$route[$word5] = "news/displayAllNews";

此页面在地址栏中显示所有带有所需关键字的新闻。但是......总有一个但是......我在这个页面上有分页,所以当我点击下一页链接...页面工作但是旧的非友好的seo url,即:

news/displayAllNews/10/10

虽然我想拥有:mygreek-keyword-here / 10/10

我在控制器中进行分页的代码如下:

$config['base_url'] = site_url('/news/displayAllNews/'.$limit.'/');

我应该在routes.php和我的控制器中做些什么来获得所需的结果?

问候,约翰

1 个答案:

答案 0 :(得分:1)

您可以通过$this->uri->uri_string()方法获取URI字符串,并按如下方式设置分页配置:

$config['base_url'] = site_url($this->uri->uri_string() .'/'. $limit.'/');

请注意,URI库是自动加载的,不需要手动加载。

<强>更新
将路线规则更改为:

$route["$word5(.*)"] = "news/displayAllNews$1";

如果它仍然无法使用,请移除.'/'. $limit.'/'短语并让分页通过以下方式添加limit

$config['per_page']         = 10;   // or $limit, default items per page.
$config['use_page_numbers'] = FALSE;