如何使 codeigniter 路由与分页一起使用

问题描述 投票:0回答:1

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

$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和我的控制器中做什么才能得到想要的结果?

codeigniter routes pagination
1个回答
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;
© www.soinside.com 2019 - 2024. All rights reserved.