簡體   English   中英

CodeIgniter分頁鏈接格式

[英]CodeIgniter Pagination links format

我正在使用codeigniter的默認分頁

< 1 2 3 4 >

但是我想用這種格式

< 1-10 11-20 21-30 >

有任何想法嗎?

好問題:您需要將代碼system/CI_Pagination.php庫擴展到application/library/MY_Pagination.php

@Dan的數學計算很好,設置到CI分頁庫,見下文

1)創建文件到application/library/MY_Pagination.php有關Create Library的more 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) 點擊這里

注意我使用了最新的核心文件,因此請在當前文件中使用修改

做一些簡單的數學調整,例如,如果$x = 1

而不是頁面1是$ x第1頁是:

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

第2頁及以上是:

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

每個顯示器的$x++計數。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM