Emlog分页导航条的美化

Emlog默认的分页导航说实话真的不是很美,但又不能从模版中定义,所以必须动用程序中的include\lib\function.base.php这个文件了!新浪SAE版本的需要修改include\lib\下function.sae.base.php这个文件.搜索分页,修改,其他的就利用CSS美化一下即可!

这里提供一个参考,仿QQ空间日志列表的分页导航,当页数小于7个的时候默认不显示“…”,等等…与QQ空间的分页导航一样,前后显示“…”并显示第一页和最后一页的页码!

替换代码:

 

/**

* 分页函数

*

* @param int $count 条目总数

* @param int $perlogs 每页显示条数目

* @param int $page 当前页码

* @param string $url 页码的地址

*/

function pagination($count,$perlogs,$page,$url,$anchor=”){

$pnums = @ceil($count / $perlogs);

$re = ”;

$urlHome = preg_replace(“|[\?&/][^\./\?&=]*page[=/\-]|”,”",$url);

if($pnums<8){

for ($i = 1;$i <=7 && $i <= $pnums; $i++){

if ($i > 0){

if ($i == $page && $i==1){

$re .= ” 上一页$i “;

 

} elseif($i == $page && $i<$pnums) {

$re .= ” $i “;

} elseif($i == $page && $i==$pnums) {

$re .= ” $i 下一页 “;

} elseif($i == 1) {

$re .= ” $i “;

} else {

$re .= ” $i “;

}

}

}

}

else{

for ($i = $page-2;$i <=$page+2 && $i <= $pnums; $i++){

if ($i > 0){

if ($i == $page && $i==1){

$ref .= ” 上一页$i “;

 

} elseif($i == $page && $i<$pnums) {

$ref .= ” $i “;

} elseif($i == $page && $i==$pnums) {

$ref .= ” $i 下一页 “;

} elseif($i == 1) {

$ref .= ” $i “;

} else {

$ref .= ” $i “;

}

}

}

for ($i = 1;$i <= 6 ; $i++){

if ($i > 0){

if ($i == $page && $i==1){

$ree .= ” 上一页$i “;

} elseif($i == $page && $i<$pnums) {

$ree .= ” $i “;

} elseif($i == $page && $i==$pnums) {

$ree .= ” $i 下一页 “;

} elseif($i == 1) {

$ree .= ” $i “;

} else {

$ree .= ” $i “;

}

}

}

for ($i = $pnums-5;$i <= $pnums ; $i++){

if ($i > 0){

if ($i == $page && $i==1){

$reee .= ” 上一页$i “;

} elseif($i == $page && $i<$pnums) {

$reee .= ” $i “;

} elseif($i == $page && $i==$pnums) {

$reee .= ” $i 下一页 “;

} elseif($i == 1) {

$reee .= ” $i “;

} else {

$reee .= ” $i “;

}

}

}

}

if ($page >= $pnums-6 && $pnums>7 && $page>4) $re = “1$reee”;

if ($page <= 4 && $pnums>7) $re = “$ree $pnums”;

if ($page <= $pnums-4 && $page>4) $re = “1$ref$pnums”;

if ($pnums <= 1) $re = ”;

if($page > 1) {

$i = $page – 1;

$re = ” 上一页 ” . $re;

}

if($page < $pnums) {

$i = $page + 1;

$re .= ” 下一页 “;

}

return $re;

}

复制黏贴的时候注意符号的状态,一般都要重新在英文输入法下替换符号!

你可能感兴趣的:(PHP学习笔记)