EMLOG通过修改内核实现修改分页样式的代码
很多站长对于EMLOG默认的分页样式不太满意,毕竟非常的简陋,那么我们就有必要自己动手丰衣足食了,现在就来为大家分享一下EMLOG通过修改内核实现修改分页样式的代码。
一、EMLOG侧边栏标签按指定数量随机显示的方法
1、打开include/lib/function.base.php文件,大约在第220~250行找到如下分页函数代码
/** * 分页函数 * * @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); for ($i = $page - 5; $i <= $page + 5 && $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 ($page > 6) $re = "<a href=\"{$urlHome}$anchor\" title=\"首页\">«</a><em>...</em>$re"; if ($page + 5 < $pnums) $re .= "<em>...</em> <a href=\"$url$pnums$anchor\" title=\"尾页\">»</a>"; if ($pnums <= 1) $re = ''; return $re; }
2、将上面的代码替换为如下代码
/** * 分页函数 * * @param int $count 条目总数 * @param int $perlogs 每页显示条数目 * @param int $page 当前页码 * @param string $url 页码的地址 */ function pagination($count,$perlogs,$page,$url,$anchor=''){ $pnums = @ceil($count / $perlogs); $page = @min($pnums,$page); $prepg=$page-1; //上一页 $nextpg=($page==$pnums ? 0 : $page+1); //下一页 $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-5;$i <= $page+5 && $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; }
3、打开首页或随机列表页查看效果即可
二、教程解析
通过修改内核分页样式代码,实现对EMLOG首页、列表页的分页样式的美化,增加用户体验
三、注意事项
本教程包含分页内容比较多,比如后页、尾页、下一页、总共多少页、以及下拉跳转到多少页等诸多功能模块,请根据自己的需要删减代码以实现精简功能