自带完整数据 快速建站好帮手
客服QQ客服QQ 客服微信客服微信 公众号公众号

phpcmsV9想给分页加个下拉跳转怎么实现

本文介绍了phpcmsV9想给分页加个下拉跳转怎么实现,解决思路:先打开这个文件global.func.php,修改PAGES的函数,然后在前端调用教程给出的新的代码,最后主是通过CSS样式制作喜欢的风格,这样就可以了。

PHPCMSV9默认的分页是一串阿拉伯数字串,无论多少页,都是用数字显示,要是能有个下拉菜单的样式在跳转的时候会方便不些,今天瓦窑源码就和大家说说phpcmsV9分页加下拉跳转怎么实现。

一、打开 phpcms/libs/functions/global.func.php

修改pages函数为:

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

if(defined('URLRULE') && $urlrule == '') {

$urlrule = URLRULE;

$array = $GLOBALS['URL_ARRAY'];

} elseif($urlrule == '') {

$urlrule = url_par('page={$page}');

}

$multipage = '';

if($num > $perpage) {

$page = $setpages+1;

$offset = ceil($setpages/2-1);

$pages = ceil($num / $perpage);

if (defined('IN_ADMIN') && !defined('PAGES')) define('PAGES', $pages);

$from = $curr_page - $offset;

$to = $curr_page + $offset;

$more = 0;

if($page >= $pages) {

$from = 2;

$to = $pages-1;

} else {

if($from <= 1) {

$to = $page-1;

$from = 2;

}  elseif($to >= $pages) {

$from = $pages-($page-2);

$to = $pages-1;

}

$more = 1;

}

// 如果总页数大于1才显示当前页码信息等。

if ($pages > 1)

{   

$multipage .= '<a>共'.$pages.'页 &nbsp; 页次 '.$curr_page.'/'.$pages.' 页</a>';

$multipage .= '';

$multipage .= '';

$multipage .= '<a href="'.pageurl($urlrule, 1, $array).'">首页</a>';

$multipage .= '';

}

if($curr_page>0) {

$multipage .= '<a href="'.pageurl($urlrule, $curr_page-1, $array).'" >上一页</a>';

if($curr_page==1) {

$multipage .= '<span>1</span>';

} elseif($curr_page>6 && $more) {

$multipage .= '<a href="'.pageurl($urlrule, 1, $array).'">1</a>..';

} else {

$multipage .= '<a href="'.pageurl($urlrule, 1, $array).'">1</a>';

}

}

for($i = $from; $i <= $to; $i++) {

if($i != $curr_page) {

$multipage .= '<a href="'.pageurl($urlrule, $i, $array).'">'.$i.'</a>';

} else {

$multipage .= '<span>'.$i.'</span>';

}

}

if($curr_page<$pages) {

if($curr_page<$pages-5 && $more) {

$multipage .= '...<a href="'.pageurl($urlrule, $pages, $array).'">'.$pages.'</a> <a href="'.pageurl($urlrule, $curr_page+1, $array).'" >下一页</a>';

} else {

$multipage .= '<a href="'.pageurl($urlrule, $pages, $array).'">'.$pages.'</a> <a href="'.pageurl($urlrule, $curr_page+1, $array).'" >下一页</a>';

}

} elseif($curr_page==$pages) {

$multipage .= '<span>'.$pages.'</span> <a href="'.pageurl($urlrule, $curr_page, $array).'" >下一页</a>';

} else {

$multipage .= '<a href="'.pageurl($urlrule, $pages, $array).'">'.$pages.'</a> <a href="'.pageurl($urlrule, $curr_page+1, $array).'" >下一页</a>';

}

}

$str = http_build_query($_GET);

$ppp=explode(page,$str);

// 如果总页数大于1才显示“最后一页”。

if ($pages > 1)

{    

$multipage .= '<a href="'.pageurl($urlrule, $pages, $array).'">尾页</a>';

$multipage .= ' &nbsp;&nbsp; 跳转到 <select class="jumpmenu" name="jumpmenu" onchange="javascript:if (this.options[this.selectedIndex].value != \'\')

window.open(this.options[this.selectedIndex].value);this.options[0].selected;">';

$multipage .= '';

for($i=1; $i<=$pages; $i++)

{

$multipage .= '<option value="'.pageurl($urlrule, $i, $array).'">第 '.$i.' 页</option>';        

}

$multipage .= '</select>';

$multipage .= '';

}

return $multipage;

}

二、前端调用分页功能的标签代码:

{pc:content action="lists" catid="$catid" num="25" order="id DESC" page="$page"}

<ul class="list lh24 f14">

{loop $data $r}

<li><span class="rt">{date('Y-m-d H:i:s',$r[inputtime])}</span>·<a href="{$r[url]}" target="_blank"{title_style($r[style])}>{$r[title]}</a></li>

{if $n%5==0}<li class="bk20 hr"></li>{/if}

{/loop}

</ul>

<div class="list-page"><div class="pagenavi">{$pages}</div></div>

{/pc}

三、前台CSS样式:

.list-page{text-align:center}

.pagenavi{margin:0;border-radius:0}

.pagenavi>a,.pagenavi>span{margin-top:10px;padding:4px 14px;margin-left:6px;color:#777;background-color:#fff;border:1px solid #ddd;display: inline-block;}

.pagenavi>a:hover{color:#0192cb}

.pagenavi>span,.pagenavi>a:focus,.pagenavi>a:hover{z-index:2;color:#fff;background-color:#0192cb;border-color:#0192cb}

.pagenavi>a:first-child{margin-left:0;border-top-left-radius:0;border-bottom-left-radius:0}

.pagenavi>a:last-child{border-top-right-radius:0;border-bottom-right-radius:0}

.jumpmenu{ height:36px; border:1px solid #ddd; padding:0 5px; margin-top:10px; outline:none;}

.jumpmenu option{ line-height:26px;}

以上就是关增加分页功能的所有内容,有兴趣的朋友可以再试试CSS样式,实现自己想要的风格。

TAG标签:phpcms下拉分页

上一个:phpcmsV9想要制作网站地图sitemap怎么开发
下一个:phpcmsV9想要IIS下增加伪静态功能怎么配置

织梦网站源码

咨询客服

QQ:1847629575

全年 09:00-23:00

(其他时间请留言)

在线客服

Copyright©2021 www.why114.com 瓦窑源码 版权所有 鲁ICP备20017802号

展开