Wordpress php 分页代码


Posted in PHP onOctober 21, 2009

效果:

Wordpress php 分页代码

将下面的函数放到你的主题的 functions.php 文件中:

function theme_echo_pagenavi(){ 
global $request, $posts_per_page, $wpdb, $paged; 
$maxButtonCount = 9; //显示的最多链接数目 
if (!is_single()) { 
if(!is_category()) { 
preg_match('#FROM\s(.*)\sORDER BY#siU', $request, $matches); 
} else { 
preg_match('#FROM\s(.*)\sGROUP BY#siU', $request, $matches); 
} 
$fromwhere = $matches[1]; 
$numposts = $wpdb->get_var("SELECT COUNT(DISTINCT ID) FROM $fromwhere"); 
$max_page = ceil($numposts /$posts_per_page); 
if(empty($paged)) { 
$paged = 1; 
} 
$start = max(1, $paged - intval($maxButtonCount/2)); 
$end = min($start + $maxButtonCount - 1, $max_page); 
$start = max(1, $end - $maxButtonCount + 1); 
if($paged == 1){ 
echo "<span>首页</span>"; 
echo "<span>上一页</span>"; 
}else{ 
echo '<a href="'.get_pagenum_link().'"><span>首页</span></a>'; 
echo '<a href="'.get_pagenum_link($paged-1).'"><span>上一页</span></a>'; 
} 
for($i=$start; $i<=$end; $i++){ 
if($i == $paged) { 
echo "<span class=\"page_num on\">[$i]</span>"; 
} else { 
echo '<a href="'.get_pagenum_link($i).'"><span class="page_num">['.$i.']</span></a>'; 
} 
} 
if($paged == $max_page){ 
echo "<span>下一页</span>"; 
echo "<span>末页</span> "; 
}else{ 
echo '<a href="'.get_pagenum_link($paged+1).'"><span>下一页</span></a>'; 
echo '<a href="'.get_pagenum_link($max_page).'"><span>末页</span></a>'; 
} 
echo " 共{$numposts}条记录, {$max_page}页."; 
} 
}

在主题的 index.php 文件中这样引用:
<?php theme_echo_pagenavi(); ?>
PHP 相关文章推荐
php生成缩略图的类代码
Oct 02 PHP
php入门教程 精简版
Dec 13 PHP
PHP中的integer类型使用分析
Jul 27 PHP
php实现用户在线时间统计详解
Oct 08 PHP
php stream_get_meta_data返回值
Sep 29 PHP
Linux下PHP加速器APC的安装与配置笔记
Oct 24 PHP
ThinkPHP内置jsonRPC的缺陷分析
Dec 18 PHP
php格式化json函数示例代码
May 12 PHP
php parse_str() 函数的定义和用法
May 23 PHP
php中get_magic_quotes_gpc()函数说明
Feb 06 PHP
laravel5表单唯一验证的实例代码
Sep 30 PHP
记Laravel调用Gin接口调用formData上传文件的实现方法
Dec 12 PHP
PHP字符串 ==比较运算符的副作用
Oct 21 #PHP
php 3行代码的分页算法(求起始页和结束页)
Oct 21 #PHP
php实现mysql同步的实现方法
Oct 21 #PHP
php 魔术方法使用说明
Oct 20 #PHP
关于Appserv无法打开localhost问题的解决方法
Oct 16 #PHP
php foreach、while性能比较
Oct 15 #PHP
php侧拉菜单 漂亮,可以向右或者向左展开,支持FF,IE
Oct 15 #PHP
You might like
Discuz! 5.0.0论坛程序中加入一段js代码,让会员点击下载附件前自动弹出提示窗口
2007/04/18 PHP
Php Mssql操作简单封装支持存储过程
2009/12/11 PHP
从康盛产品(discuz)提取出来的模板类
2011/06/28 PHP
解析php 版获取重定向后的地址(代码)
2013/06/26 PHP
php 启动时报错的简单解决方法
2014/01/27 PHP
php 调用百度sms来发送短信的实现示例
2018/11/02 PHP
javascript实现unicode和字符的互相转换
2007/07/18 Javascript
javascript 处理事件绑定的一些兼容写法
2009/12/24 Javascript
jQuery 数据缓存data(name, value)详解及实现
2010/01/04 Javascript
封装html的select标签的js操作实例
2013/07/02 Javascript
JS 数字转换研究总结
2013/12/26 Javascript
jquery实现效果比较好的table选中行颜色
2014/03/25 Javascript
jQuery中children()方法用法实例
2015/01/07 Javascript
js过滤HTML标签完整实例
2015/11/26 Javascript
分享两段简单的JS代码防止SQL注入
2016/04/12 Javascript
Bootstarp基本模版学习教程
2017/02/01 Javascript
babel的使用及安装配置教程
2018/02/22 Javascript
Vue 无限滚动加载指令实现方法
2019/05/28 Javascript
[01:15:12]DOTA2上海特级锦标赛主赛事日 - 1 败者组第一轮#4Newbee VS CDEC
2016/03/03 DOTA
python益智游戏计算汉诺塔问题示例
2014/03/05 Python
仅用500行Python代码实现一个英文解析器的教程
2015/04/02 Python
详解python使用Nginx和uWSGI来运行Python应用
2018/01/09 Python
对numpy中向量式三目运算符详解
2018/10/31 Python
解决Python3下map函数的显示问题
2019/12/04 Python
20行Python代码实现一款永久免费PDF编辑工具的实现
2020/08/27 Python
使用css3制作登录表单的步骤
2014/04/07 HTML / CSS
美国最顶级的精品店之一:Hampden Clothing
2016/12/22 全球购物
写演讲稿所需要注意的4个条件
2014/01/09 职场文书
个人评价范文分享
2014/01/11 职场文书
家长给老师的道歉信
2014/01/13 职场文书
综治维稳工作承诺书
2014/08/30 职场文书
故宫的导游词
2015/01/31 职场文书
政府会议通知范文
2015/04/15 职场文书
redis实现排行榜功能
2021/05/24 Redis
go使用Gin框架利用阿里云实现短信验证码功能
2021/08/04 Golang
分享CSS盒子模型隐藏的几种方式
2022/02/28 HTML / CSS