正务库

不修改emlog内核实现博客分页自定义的方法分享

时间:2年前   游览量:366    标签: nbsp    quot    page    lt    gt    39    方法   

以前有分享过 emlog修改分页样式(分页函数)方法总结[修改内核]的方法,今日给大家分享是不修改 emlog内核实现 博客分页自定义的方法,其实在代码上和以前相差不了多少;下面是详情教程:首页找到模板的module.php并在其最后加入如下代码:

<?php //分页函数
function sheli_fy($count,$perlogs,$page,$url,$anchor=''){
$pnums = @ceil($count / $perlogs);
$page = @min($pnums,$page);
$prepg=$page-1;                 //shuyong.net上一页
$nextpg=($page==$pnums ? 0 : $page+1); //shuyong.net下一页
$urlHome = preg_replace("|[\?&/][^\./\?&=]*page[=/\-]|","",$url);
//开始分页导航内容
$re = "";
if($pnums<=1) return false;	//如果只有一页则跳出	
if($page!=1) $re .=" <a href=\"$urlHome$anchor\">首页</a> "; 
if($prepg) $re .=" <a href=\"$url$prepg$anchor\">前页</a> ";
for ($i = $page-2;$i <= $page+2 && $i <= $pnums; $i++){
if ($i > 0){if ($i == $page){$re .= " <span>$i</span> ";
}elseif($i == 1){$re .= " <a href=\"$urlHome$anchor\">$i</a> ";
}else{$re .= " <a href=\"$url$i$anchor\">$i</a> ";}
}}
if($nextpg) $re .=" <a href=\"$url$nextpg$anchor\">后页</a> "; 
if($page!=$pnums) $re.=" <a href=\"$url$pnums$anchor\" title=\"尾页\">尾页</a>";
//下拉跳转列表,循环列出所有页码
$re .=" 跳转到第 <select name='topage' size='1' onchange='window.location=\"$url\"+this.value'>\n";
for($i=1;$i<=$pnums;$i++){if($i==$page) $re .="<option value='$i' selected>$i</option>\n";
else $re .="<option value='$i'>$i</option>\n";}
$re .="</select> 页,共 $pnums 页";
return $re;}
?>


列表页调用方法(即log_list.php页):

<?php echo sheli_fy($lognum,$index_lognum,$page,$pageurl);?>


微语页调用方法:

<?php echo sheli_fy($twnum,Option::get('index_twnum'),$page,BLOG_URL.'t/?page=');?>