首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CodeIgniter分页-将页码附加到“页”字符串

CodeIgniter分页-将页码附加到“页”字符串
EN

Stack Overflow用户
提问于 2013-12-27 16:40:57
回答 2查看 384关注 0票数 0

我试图实现的是这样通过分页输出的urls:

代码语言:javascript
复制
http://www.mysite.com/users/page5

代码语言:javascript
复制
http://www.mysite.com/users/page-5

目前,它将使用如下URI段:

代码语言:javascript
复制
http://www.mysite.com/users/page/5

如果使用前两个URL,我可以修改routes.php配置文件来路由路径。所以这不是问题所在。

我遇到的问题是,如何初始化分页的设置,以便$this->pagination->create_links()将创建一个具有类似于第一或第二格式链接的项的分页?

如果你需要更多的解释或例子,请告诉我。我不太擅长解释事情。:)

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-12-28 05:22:17

此功能已经存在于CodeIgniter 3.0的开发版本中。您可以在分页类位于这里时查看它。

要使用这个库,您可以使用所有的CI3.0(相当稳定),或者B)通过创建application/libraries/MY_Pagination.php并填充上面链接的内容来扩展(或者更实际地说,替换)分页库。(完全披露:我已经有一段时间没有修改CI,所以我不知道有什么变化,因为这可能会导致错误的任何这个答案。)

若要使用所需的功能,请指定基本URL减去page-X段,设置要在URI段中使用页码而不是偏移量,然后指定前缀。

代码语言:javascript
复制
$config['base_url'] = site_url('users');
$config['use_page_numbers'] = true;
$config['prefix'] = 'page-';

确保还包括您的其他显而易见的项目,如per_page等。

票数 0
EN

Stack Overflow用户

发布于 2013-12-27 17:14:29

若要更改分页库的功能,可以扩展库并重写create_links()函数。

在应用程序/库/

该文件应该具有以下结构,因此您可以更改或添加其他功能到CI的本机分页库。(直接更改系统目录中的分页库是错误的做法。

代码语言:javascript
复制
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class MY_Pagination extends CI_Pagination {

    public function __construct()
    {
        parent::__construct();
    }

}

然后,您需要将create_links()函数添加到您的MY_Pagination类中,从而允许您覆盖其默认功能。下面是您可以更改什么以实现您想要的输出的解释(您可能希望通过向函数添加一个参数来增加灵活性,但这是我能想到的最简单的更改)。

代码语言:javascript
复制
function create_links()
{
    // You can copy the exact functionality of this function from:
    // system/libraries/Pagination.php

    // The line you want to change is:
    // $this->base_url = rtrim($this->base_url, '/') .'/';

    // Changing to this: $this->base_url = rtrim($this->base_url, '/') .'';
    // Will create links in this format: ../page5

    // Or changing to this: $this->base_url = rtrim($this->base_url, '/') .'-';
    // Will create links in this format: ../page-5
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20804320

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档