2014-08-28 41 views

回答

2

很好的问题:你需要通过@丹到system/CI_Pagination.php库扩展的代码到application/library/MY_Pagination.php

数学计算是好的,设置成CI分页库,见下文

1)创建文件到application/library/MY_Pagination.phpmore info关于创建图书馆

覆盖create_links()从自定义的方法方法,请参见下面

修改后的代码create_links()方法

if ($this->cur_page === $loop){ 
    // Current page 
    $output .= $this->cur_tag_open.($this->cur_page == 1 ? $loop : $loop*($this->per_page)+1).'-'.($loop * $this->per_page).$this->cur_tag_close; 
}elseif ($i === $base_page){ 
// First page 
    $output .= $this->num_tag_open.'<a href="'.$first_url.'"'.$attributes.$this->_attr_rel('start').'>' 
       .((($loop)*($this->per_page) - $this->per_page)+1) .'-'. ($loop * $this->per_page).'</a>' 
       .$this->num_tag_close; 
}else{ 
    $append = $this->prefix.$i.$this->suffix; 
    $output .= $this->num_tag_open.'<a href="'.$base_url.$append.'"'.$attributes.$this->_attr_rel('start').'>' 
       .((($loop)*($this->per_page) - $this->per_page)+1) .'-'. ($loop * $this->per_page) 
       .'</a>'.$this->num_tag_close; 
} 

完全MY_Pagination.php文件号线(577-592)click here

注意我已经使用了最新的核心文件,所以请使用您的修正案在当前文件

+0

是不是应该在核心/ MY_Pagination.php? – 2014-08-28 08:11:00

+0

'application/library/MY_Pagination.php'创建新文件。 – Girish 2014-08-28 08:38:54

+0

致命错误:您在第125行 – 2014-08-28 09:38:31

1

做一些简单的数学来调整,因此,例如,如果$x = 1

而是第1个存在$ X第1页是:

<?php echo $x.'-'.($x * 10); ?> 

第2页和较高的是:

<?php 
    $x++; 
    echo (($x)*10)-10)+1.'-'.($x * 10); 
?> 

其中$x++为每个显示计数。

+0

不......用'CodeIgniter'库不可能,而'OP'不会修改库 – Girish 2014-08-28 02:51:44

+0

应该是可以的。 OP只是询问显示内容,点击时传递给URI的值可能与显示内容不同。正如[文档](https://ellislab.com/codeigniter/user-guide/libraries/pagination.html)所述,它是“100%可定制的”。 – Dan 2014-08-28 02:54:28

+0

页面链接是通过'create_link'函数创建的,他需要将库扩展为'application/library/MY_Pagination.php',并通过自定义方法覆盖方法那里自定义代码集成,更多信息https://ellislab.com/codeigniter /user-guide/general/creating_libraries.html – Girish 2014-08-28 03:09:13