帝國cms 列表頁分頁樣式修改美化【1】


【1】自己修改帝國cms默認的分頁樣式(css),這樣做的好處是你不用去改動帝國的核心文件,方便以后升級。

【2】自己動手去修改帝國的分頁(php+css),帝國的分頁在e>class>下的t_functions.php這個文件里。

===============================================

列表頁模板[!--show.page--]:分頁導航(下拉式)  大概在10-98行;

列表頁模板[!--show.listpage--]:分頁導航(列表式) 在101-169行;

內容頁模板(返回內容分頁):分頁導航 在172-228行;

內容頁模板(返回下拉式內容分頁導航):標題式分頁導航 在231-262行。

===============================================

上面大概介紹了下這個文件下有那些分頁,那下面我們就來修改程序分頁,但是又不會在升級程序時候帶來麻煩。

第一步:進入帝國cms后台,點擊系統設置->系統參數設置->信息設置:里面有個"列表分頁函數(列表)"選項,將里面的函數名修改為user_ShowListMorePage
第二部:復制t_function.php列表式分頁代碼到 e/class/userfun.php <?php   ?>  之間

下面我把分頁導航(列表式)拿出來,並帶上了注釋,如下:

//列表模板之列表式分頁
function sys_ShowListMorePage($num,$page,$dolink,$type,$totalpage,$line,$ok,$search="",$add){
    global $fun_r,$public_r
    //num是取得的當前總的文章數,line是欄目設定里的一頁顯示多少文章數。如果當前文章總數少於設定數,中斷程序返回,並且什么也不顯示。
    if($num<=$line)
    {
        $pager['showpage']='';
        return $pager;
    }
    //文件名
    if(empty($add['dofile']))
    {
        $add['dofile']='index';
    }
    //靜態頁數
    $repagenum=$add['repagenum'];
    //listpagelistnum是"系統參數設置" 里的 "信息設置" 下的 "列表分頁函數(列表)"下的 "每頁顯示12個頁碼"這一項。
    $page_line=$public_r['listpagelistnum'];
    //這個$snum可以控制 "當前頁" 顯示的位置,設置成2,當前頁就顯示在第3個位置。
    $snum=2;
    //$totalpage=ceil($num/$line);//取得總頁數
    $firststr='<a title="Total record">&nbsp;<b>'.$num.'</b> </a>&nbsp;&nbsp;';//顯示總文章數
    //上一頁
    if($page<>1)
    {
        //若當前頁不是第一頁,則顯示它的上一頁鏈接
        //$dolink是欄目的地址,$type是網頁文件的擴展名,比如 .html ,那個$type之前有個點,是起連接作用的連接符,也就是說$type里面的內容是  .html
        $toppage='<a href="'.$dolink.$add['dofile'].$type.'">'.$fun_r['startpage'].'</a>&nbsp;';
        $pagepr=$page-1;
        if($pagepr==1)
        {
            $prido=$add['dofile'].$type;
        }
        else
        {
            $prido=$add['dofile'].'_'.$pagepr.$type;
        }
        $prepage='<a href="'.$dolink.$prido.'">'.$fun_r['pripage'].'</a>';
    }
    //下一頁
    if($page!=$totalpage)
    {
        //如果當前頁不是最后一頁,則顯示它的下一頁鏈接
        $pagenex=$page+1;
        $nextpagelink=$repagenum&&$repagenum<$pagenex?eReturnRewritePageLink2($add,$pagenex):$dolink.$add['dofile'].'_'.$pagenex.$type;
        $lastpagelink=$repagenum&&$repagenum<$totalpage?eReturnRewritePageLink2($add,$totalpage):$dolink.$add['dofile'].'_'.$totalpage.$type;
        $nextpage='&nbsp;<a href="'.$nextpagelink.'">'.$fun_r['nextpage'].'</a>';
        $lastpage='&nbsp;<a href="'.$lastpagelink.'">'.$fun_r['lastpage'].'</a>';
    }
    //通過判斷當前頁碼與上面講述的snum的大小,確定頁碼顯示的狀態。如果$page-$snum<1,$starti賦值為1,否則$starti賦值為$page-$snum。
    $starti=$page-$snum<1?1:$page-$snum;
    $no=0;
    //此處的for循環就是用來顯示頁碼的,包括從第幾個頁碼開始顯示,以及當前頁碼加粗和顯示多少個頁碼
    for($i=$starti;$i<=$totalpage&&$no<$page_line;$i++)
    {
        $no++;
        //如果是當前頁碼,則加粗,有需要修改當前頁碼樣式的可在此修改
        if($page==$i)
        {
            $is_1="<b>";
            $is_2="</b>";
        }
        //如果當前頁是首頁
        elseif($i==1)
        {
            $is_1='<a href="'.$dolink.$add['dofile'].$type.'">';
            $is_2="</a>";
        }
        //其余的頁碼,可以通過給a加樣式來修改顯示效果
        else
        {
            $thispagelink=$repagenum&&$repagenum<$i?eReturnRewritePageLink2($add,$i):$dolink.$add['dofile'].'_'.$i.$type;
            $is_1='<a href="'.$thispagelink.'">';
            $is_2="</a>";
        }
        $returnstr.='&nbsp;'.$is_1.$i.$is_2;//$returnstr即是生成的顯示頁號的代碼
    }
    $returnstr=$firststr.$toppage.$prepage.$returnstr.$nextpage.$lastpage;
    $pager['showpage']=$returnstr;
    return $pager;
}
View Code

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM