PC6下载站

分类分类

dedecms分页显示代码并设置样式教程

关注+2011-01-13作者:清晨

dedecms分页显示代码并设置样式教程

dedecms分页代码默认是<li>分页数据</li>,这样为我们设置样式带来了一定的难度。在这里做了将 li 标签修改 a 标签,方便设置样式。需要修改的有两个文件
一、include/arc.archives.class.php 修改代码如下(注释部分为原有代码,紧跟后面的是修改后的代码)

  1. //获得静态页面分页列表 
  2. function GetPagebreak($totalPage,$nowPage,$aid
  3.     if($totalPage==1) 
  4.     { 
  5.         return ""
  6.     } 
  7.     //$PageList = "<li><a>共".$totalPage."页: </a></li>"; 
  8.     $PageList = "<a>共".$totalPage."页: </a>"
  9.     $nPage = $nowPage-1; 
  10.     $lPage = $nowPage+1; 
  11.     if($nowPage==1) 
  12.     { 
  13.         //$PageList.="<li><a href='#'>上一页</a></li>"; 
  14.         $PageList.="<a href='#'>上一页</a>"
  15.     } 
  16.     else 
  17.     { 
  18.         if($nPage==1) 
  19.         { 
  20.             //$PageList.="<li><a href='".$this->NameFirst.".".$this->ShortName."'>上一页</a></li>"; 
  21.             $PageList.="<a href='".$this->NameFirst.".".$this->ShortName."'>上一页</a>"
  22.         } 
  23.         else 
  24.         { 
  25.             //$PageList.="<li><a href='".$this->NameFirst."_".$nPage.".".$this->ShortName."'>上一页</a></li>"; 
  26.             $PageList.="<a href='".$this->NameFirst."_".$nPage.".".$this->ShortName."'>上一页</a>"
  27.         } 
  28.     } 
  29.     for($i=1;$i<=$totalPage;$i++) 
  30.     { 
  31.         if($i==1) 
  32.         { 
  33.             if($nowPage!=1) 
  34.             { 
  35.                 //$PageList.="<li><a href='".$this->NameFirst.".".$this->ShortName."'>1</a></li>"; 
  36.                 $PageList.="<a href='".$this->NameFirst.".".$this->ShortName."'>1</a>"
  37.             } 
  38.             else 
  39.             { 
  40.                 //$PageList.="<li class=\"thisclass\"><a href='#'>1</a></li>"; 
  41.                 $PageList.="<a href='#' class='thisclass'>1</a>"
  42.             } 
  43.         } 
  44.         else 
  45.         { 
  46.             $n = $i
  47.             if($nowPage!=$i
  48.             { 
  49.                 //$PageList.="<li><a href='".$this->NameFirst."_".$i.".".$this->ShortName."'>".$n."</a></li>"; 
  50.                 $PageList.="<a href='".$this->NameFirst."_".$i.".".$this->ShortName."'>".$n."</a>"
  51.             } 
  52.             else 
  53.             { 
  54.                 //$PageList.="<li class=\"thisclass\"><a href='#'>{$n}</a></li>"; 
  55.                 $PageList.="<a href='#' class='thisclass'>{$n}</a>"
  56.             } 
  57.         } 
  58.     } 
  59.     if($lPage <= $totalPage
  60.     { 
  61.         //$PageList.="<li><a href='".$this->NameFirst."_".$lPage.".".$this->ShortName."'>下一页</a></li>"; 
  62.         $PageList.="<a href='".$this->NameFirst."_".$lPage.".".$this->ShortName."'>下一页</a>"
  63.     } 
  64.     else 
  65.     { 
  66.         //$PageList.= "<li><a href='#'>下一页</a></li>"; 
  67.         $PageList.= "<a href='#'>下一页</a>"
  68.     } 
  69.     return $PageList

二、include/arc.listview.class.php 修改代码如下(注释部分为原有代码,紧跟后面的是修改后的代码)

  1. //获取静态的分页列表 
  2. function GetPageListST($list_len,$listitem="index,end,pre,next,pageno"
  3.     $prepage = $nextpage = ''
  4.     $prepagenum = $this->PageNo-1; 
  5.     $nextpagenum = $this->PageNo+1; 
  6.     if($list_len=='' || ereg("[^0-9]",$list_len)) 
  7.     { 
  8.         $list_len=3; 
  9.     } 
  10.     $totalpage = ceil($this->TotalResult/$this->PageSize); 
  11.     if($totalpage<=1 && $this->TotalResult>0) 
  12.     { 
  13.  
  14.         //return "<li><span class=\"pageinfo\">共 <strong>1</strong>页<strong>".$this->TotalResult."</strong>条记录</span></li>\r\n"; 
  15.         return "<a class='current'>共 1 页 ".$this->TotalResult." 条记录</a>"
  16.     } 
  17.     if($this->TotalResult == 0) 
  18.     { 
  19.         //return "<li><span class=\"pageinfo\">共 <strong>0</strong>页<strong>".$this->TotalResult."</strong>条记录</span></li>\r\n"; 
  20.         return "<a class='current'>共 0 页 ".$this->TotalResult." 条记录</a>"
  21.     } 
  22.     $purl = $this->GetCurUrl(); 
  23.     //$maininfo = "<li><span class=\"pageinfo\">共 <strong>{$totalpage}</strong>页<strong>".$this->TotalResult."</strong>条</span></li>\r\n"; 
  24.     $maininfo = "<a class='current'>共 {$totalpage} 页 ".$this->TotalResult." 条</a>"
  25.     $tnamerule = $this->GetMakeFileRule($this->Fields['id'],"list",$this->Fields['typedir'],$this->Fields['defaultname'],$this->Fields['namerule2']); 
  26.     $tnamerule = ereg_replace('^(.*)/','',$tnamerule); 
  27.  
  28.     //获得上一页和主页的链接 
  29.     if($this->PageNo != 1) 
  30.     { 
  31.         //$prepage.="<li><a href='".str_replace("{page}",$prepagenum,$tnamerule)."'>上一页</a></li>\r\n"; 
  32.         $prepage.="<a href='".str_replace("{page}",$prepagenum,$tnamerule)."'>上一页</a>"
  33.         //$indexpage="<li><a href='".str_replace("{page}",1,$tnamerule)."'>首页</a></li>\r\n"; 
  34.         $indexpage="<a href='".str_replace("{page}",1,$tnamerule)."'>首页</a>"
  35.     } 
  36.     else 
  37.     { 
  38.         //$indexpage="<li>首页</li>\r\n"; 
  39.         $indexpage="<a class='current'>首页</a>"
  40.     } 
  41.  
  42.     //下一页,未页的链接 
  43.     if($this->PageNo!=$totalpage && $totalpage>1) 
  44.     { 
  45.         //$nextpage.="<li><a href='".str_replace("{page}",$nextpagenum,$tnamerule)."'>下一页</a></li>\r\n"; 
  46.         $nextpage.="<a href='".str_replace("{page}",$nextpagenum,$tnamerule)."'>下一页</a>"
  47.         //$endpage="<li><a href='".str_replace("{page}",$totalpage,$tnamerule)."'>末页</a></li>\r\n"; 
  48.         $endpage="<a href='".str_replace("{page}",$totalpage,$tnamerule)."'>末页</a>"
  49.     } 
  50.     else 
  51.     { 
  52.         //$endpage="<li>末页</li>\r\n"; 
  53.         $endpage="<a class='current'>末页</a>"
  54.     } 
  55.  
  56.     //option链接 
  57.     $optionlist = ''
  58.  
  59.     $optionlen = strlen($totalpage); 
  60.     $optionlen = $optionlen*12 + 18; 
  61.     if($optionlen < 36) $optionlen = 36; 
  62.     if($optionlen > 100) $optionlen = 100; 
  63.     //$optionlist = "<li><select name='sldd' style='width:{$optionlen}px' onchange='location.href=this.options[this.selectedIndex].value;'>\r\n"; 
  64.     $optionlist = "<select name='sldd' style='width:{$optionlen}px' onchange='location.href=this.options[this.selectedIndex].value;'>"
  65.     for($mjj=1;$mjj<=$totalpage;$mjj++) 
  66.     { 
  67.         if($mjj==$this->PageNo) 
  68.         { 
  69.             $optionlist .= "<option value='".str_replace("{page}",$mjj,$tnamerule)."' selected>$mjj</option>\r\n"
  70.         } 
  71.         else 
  72.         { 
  73.             $optionlist .= "<option value='".str_replace("{page}",$mjj,$tnamerule)."'>$mjj</option>\r\n"
  74.         } 
  75.     } 
  76.     //$optionlist .= "</select></li>\r\n"; 
  77.     $optionlist .= "</select>"
  78.  
  79.     //获得数字链接 
  80.     $listdd=""
  81.     $total_list = $list_len * 2 + 1; 
  82.     if($this->PageNo >= $total_list
  83.     { 
  84.         $j = $this->PageNo-$list_len
  85.         $total_list = $this->PageNo+$list_len
  86.         if($total_list>$totalpage
  87.         { 
  88.             $total_list=$totalpage
  89.         } 
  90.     } 
  91.     else 
  92.     { 
  93.         $j=1; 
  94.         if($total_list>$totalpage
  95.         { 
  96.             $total_list=$totalpage
  97.         } 
  98.     } 
  99.     for($j;$j<=$total_list;$j++) 
  100.     { 
  101.         if($j==$this->PageNo) 
  102.         { 
  103.             //$listdd.= "<li class=\"current\">$j</li>\r\n"; 
  104.             $listdd.= "<a class=\"current\">$j</a>"
  105.         } 
  106.         else 
  107.         { 
  108.             //$listdd.="<li><a href='".str_replace("{page}",$j,$tnamerule)."'>".$j."</a></li>\r\n"; 
  109.             $listdd.="<a href='".str_replace("{page}",$j,$tnamerule)."'>".$j."</a>"
  110.         } 
  111.     } 
  112.     $plist = ''
  113.     if(eregi('info',$listitem)) $plist .= $maininfo
  114.     if(eregi('index',$listitem)) $plist .= $indexpage
  115.     if(eregi('pre',$listitem)) $plist .= $prepage
  116.     if(eregi('pageno',$listitem)) $plist .= $listdd
  117.     if(eregi('next',$listitem)) $plist .= $nextpage
  118.     if(eregi('end',$listitem)) $plist .= $endpage
  119.     if(eregi('option',$listitem)) $plist .= $optionlist
  120.      
  121.     return $plist

以上代码适用于 dedecms5.6

分页代码调用及样式如下

  1. <dd class="g_page"> 
  2. {dede:pagelist listsize='2' listitem='info,index,end,pre,next,pageno'/} 
  3. </dd> 
  1. .g_page{ width:100%overflow:hiddenheight:22pxtext-align:centermargin-top:10px;} 
  2. .g_page a{ display:inline-block_display:inline; zoom:1border:1px solid #cccheight:20pxline-height:20px;   padding:0 5pxtext-decoration:underlinemargin:0 5px 0 0;} 
  3. .g_page .current{ text-decoration:none;} 
展开全部

相关文章

更多+相同厂商

热门推荐

  • 最新排行
  • 最热排行
  • 评分最高
排行榜

    点击查看更多

      点击查看更多

        点击查看更多

        说两句网友评论

          我要评论...
          取消