织梦系统——更改文章分页

  文章的分页在网站用户体验上起着举足轻重的地位,好的分页可以给用户一个好的印象,更能留住来访者

  偶然发现腾讯网上文章的分页样式做的相当不错,于是乎自己开始——仿!

  看到这里的分页当然第一想到的肯定是{dede:pagebreak/},但是这个用后的结果来看没什么功能上来说够齐全,但样式上很难控制,还是咱自己动手吧,丰衣足食么。。

  打开include/arc.archives.class.php,我们这里主要更改两个函数(GetPagebreakDM、GetPagebreak)就行了。更改的时候注意,一般最好不要大动,能小改就小改,还要备份哦!

 

  下面是我更改过后的,加上腾讯的CSS样式,基本完全一样

  

 

/**
* 获得动态页面分页列表
*
* @access public
* @param int $totalPage 总页数
* @param int $nowPage 当前页数
* @param int $aid 文档id
* @return string
*/
function GetPagebreakDM($totalPage, $nowPage, $aid)
{
global $cfg_rewrite;
if($totalPage==1)
{
return "";
}
$PageList = "<ul>";
//获取分页导航
for($i=1;$i<=$totalPage;$i++)
{
if($i==1)
{
if($nowPage!=1)
{
$PageList.="<li><a href='view.php?aid=$aid'>1</a></li>";
if($cfg_rewrite == 'Y')
{
$PageList = preg_replace("#.php\?aid=(\d+)#i", '-\\1-1.html', $PageList);
}
}
else
{
$PageList.="<li><span>1</span></li>";
}
}
else
{
$n = $i;
if($nowPage!=$i)
{
$PageList.="<li><a href='view.php?aid=$aid&pageno=$i'>".$n."</a></li>";
if($cfg_rewrite == 'Y')
{
$PageList = str_replace(".php?aid=", "-", $PageList);
$PageList = preg_replace("#&pageno=(\d+)#i", '-\\1.html', $PageList);
}
}
else
{
$PageList.="<li><span>{$n}</span></li>";
}
}
}
$nPage = $nowPage-1;
$lPage = $nowPage+1;
if($nowPage==1)
{
$PageList.="<li><span class=\"next\">上一页</span></li>";
}
else
{
if($nPage==1)
{
$PageList.="<li><a class=\"next\" href='view.php?aid=$aid'>上一页</a></li>";
if($cfg_rewrite == 'Y')
{
$PageList = preg_replace("#.php\?aid=(\d+)#i", '-\\1-1.html', $PageList);
}
}
else
{
$PageList.="<li><a class=\"next\" href='view.php?aid=$aid&pageno=$nPage'>上一页</a></li>";
if($cfg_rewrite == 'Y')
{
$PageList = str_replace(".php?aid=", "-", $PageList);
$PageList = preg_replace("#&pageno=(\d+)#i", '-\\1.html', $PageList);
}
}
}
if($lPage < $totalPage)
{
$PageList.="<li><a class=\"next\" href='view.php?aid=$aid&pageno=$lPage'>下一页</a></li>";
if($cfg_rewrite == 'Y')
{
$PageList = str_replace(".php?aid=", "-", $PageList);
$PageList = preg_replace("#&pageno=(\d+)#i", '-\\1.html', $PageList);
}
}
else
{
$PageList.= "<li><span class=\"next\">下一页</span></li>";
}
return $PageList."</ul>";
}

/**
* 获得静态页面分页列表
*
* @access public
* @param int $totalPage 总页数
* @param int $nowPage 当前页数
* @param int $aid 文档id
* @return string
*/
function GetPagebreak($totalPage, $nowPage, $aid)
{
if($totalPage==1)
{
return "";
}
$PageList = "<ul>";

for($i=1;$i<=$totalPage;$i++)
{
if($i==1)
{
if($nowPage!=1)
{
$PageList.="<li><a href='".$this->NameFirst.".".$this->ShortName."'>1</a></li>";
}
else
{
$PageList.="<li><span>1</span></li>";
}
}
else
{
$n = $i;
if($nowPage!=$i)
{
$PageList.="<li><a href='".$this->NameFirst."_".$i.".".$this->ShortName."'>".$n."</a></li>";
}
else
{
$PageList.="<li><span>{$n}</span></li>";
}
}
}
$nPage = $nowPage-1;
$lPage = $nowPage+1;
if($nowPage==1)
{
$PageList.="<li><span class=\"next\">上一页</span></li>";
}
else
{
if($nPage==1)
{
$PageList.="<li><a class=\"next\" href='".$this->NameFirst.".".$this->ShortName."'>上一页</a></li>";
}
else
{
$PageList.="<li><a class=\"next\" href='".$this->NameFirst."_".$nPage.".".$this->ShortName."'>上一页</a></li>";
}
}

if($lPage <= $totalPage)
{
$PageList.="<li><a class=\"next\" href='".$this->NameFirst."_".$lPage.".".$this->ShortName."'>下一页</a></li>";
}
else
{
$PageList.= "<li><span class=\"next\">下一页</span></li>";
}
return $PageList."</ul>";
}



posted @ 2011-09-23 14:14  小 伍  阅读(556)  评论(0编辑  收藏  举报