摘要:大家做网站的时候,可能很多时候分页样式都得根据模板的要求来控制的,这时很多人都会去修改全局文件 global.func.php 里的 pages() 函数,这样问题就来了:这个分页函数连后台也会影响到的,就是说,这个分页函数是全站共用的。

大家做网站的时候,可能很多时候分页样式都得根据模板的要求来控制的,这时很多人都会去修改全局文件 global.func.php 里的 pages() 函数,这样问题就来了:这个分页函数连后台也会影响到的,就是说,这个分页函数是全站共用的。

下面就提供一种解决方案,新增一个新的分页函数供模版调用。

一、复制page函数

找到以下文件 phpcms\libs\functions \global.func.php

在该文件找到page函数

function pages($num, $curr_page, $perpage = 20, $urlrule = '', $array = array(),$setpages = 10) {
……

把整个函数复制一份,并且重命名函数名为:page_new

function pages_new($num, $curr_page, $perpage = 20, $urlrule = '', $array = array(),$setpages = 10) {
……

二、修改分页样式

就在 phpcms\libs\functions \global.func.php 这个文档的 page_new 函数里面修改

三、提供模版调用

找到一下文件 phpcms/libs/classes/template_cache.class.php

找到以下代码:

$str .= '$pages = pages($'.$op.'_total, $page, $pagesize, $urlrule);';

复制一份为:

$str .= '$pages_new = pages_new($'.$op.'_total, $page, $pagesize, $urlrule);';

再找到以下代码:

$str .= '$r = $get_db->sql_query("'.$sql.'");$s = $get_db->fetch_next();$pages=pages($s[\'count\'], $page, $pagesize, $urlrule);';

复制一份为:

$str .= '$r = $get_db->sql_query("'.$sql.'");$s = $get_db->fetch_next();$pages_new=pages_new($s[\'count\'], $page, $pagesize, $urlrule);';

四、模版调用

在模版调用的时候,使用标签 {$pages_new} 即可调用自定义样式的分页。