在使用Thinkphp開發的內容管理系統裡面,很多東西都要自己開發,內容分頁當然也是要自己開發的,下面是我根據查資料自己整理的方法:
1、首先是在後台編輯內容的時候需要插入分頁符,不同的編輯器分頁符自然也不同了
2、然後就是讀取文章內容的時候,要根據分頁符來把內容分割成多個數組然,這裡需要傳值當前是第幾頁,根據頁數來讀取分割後的數組
代碼如下:
復制代碼 代碼如下:
<php>
$arr_con=explode('_ueditor_page_break_tag_',$dy['art_content']);//分割內容
$pagenum=count($arr_con);//計算頁數
//根據傳值判斷當前顯示頁數
if(intval($_GET['p'])==0){
$p=1;
}else{
$p=intval($_GET['p']);
}
//獲得當前頁的url
$url = $_SERVER['REQUEST_URI'].(strpos($_SERVER['REQUEST_URI'],'?')?'':"?");
$parse = parse_url($url);
if(isset($parse['query'])) {
parse_str($parse['query'],$params);
unset($params['p']);
$url = $parse['path'].'?'.http_build_query($params);
}
//有多少頁都全部循環出來
for($i=1;$i<=$pagenum;$i++){
if($i==$p){
$show.='<span style="color:#f00;">['.$i.']</span>';
}
else{
$show.='<a href="'.$url.'&p='.$i.'">['.$i.']</a>';
}
}
// dump($arr_con);
$show=$pagenum==1?'':$show;//分頁代碼顯示判斷
</php>
{$arr_con[$p-1]}<!--這裡是剛進入這篇文章顯示的數據,數組鍵值從0開始-->
注意:如果使用的Thinkphp,並且配置了靜態化,
則修改配置文件'News:article'=>array('{:module}/{:action}_{art_id}_{p}',0),加個p參數
以上僅供參考,具體還要根據自己具體項目來調整,相信小伙伴們能夠將其擴展的很好。