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访问查询mysql数据的三种方法
Oct 09 PHP
PHP4和PHP5性能测试和对比 测试代码与环境
Aug 17 PHP
可以在线执行PHP代码包装修正版
Mar 15 PHP
php Xdebug 调试扩展的安装与使用.
Mar 13 PHP
php和javascript之间变量的传递实现代码
Dec 19 PHP
探讨方法的重写(覆载)详解
Jun 08 PHP
浅析PHP文件下载原理
Dec 25 PHP
通过PHP简单实例介绍文件上传
Dec 16 PHP
PHP简单操作MongoDB的方法(安装及增删改查)
May 26 PHP
php使用正则表达式获取字符串中的URL
Dec 29 PHP
详解php中生成标准uuid(guid)的方法
Apr 28 PHP
如何使用php生成zip压缩包
Apr 21 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
PHP数据缓存技术
2007/02/14 PHP
PHP中的CMS的涵义
2007/03/11 PHP
php面向对象全攻略 (十六) 对象的串行化
2009/09/30 PHP
php绝对路径与相对路径之间关系的的分析
2010/03/03 PHP
单点登录 Ucenter示例分析
2013/10/29 PHP
php构造函数的继承方法
2015/02/09 PHP
Jquery 学习笔记(一)
2009/10/13 Javascript
JS判断是否为数字,是否为整数,是否为浮点数的代码
2010/04/24 Javascript
JS中动态添加事件(绑定事件)的代码
2011/01/09 Javascript
js中cookie的添加、取值、删除示例代码
2013/10/21 Javascript
一个简单的动态加载js和css的jquery代码
2014/09/01 Javascript
Javascript的setTimeout()使用闭包特性时需要注意的问题
2014/09/23 Javascript
JS对字符串编码的几种方式使用指南
2015/05/14 Javascript
ztree获取选中节点时不能进入可视区域出现BUG如何解决
2015/12/03 Javascript
js实现文本框输入文字个数限制代码
2015/12/25 Javascript
jQuery的promise与deferred对象在异步回调中的作用
2016/05/03 Javascript
JavaScript实现格式化字符串函数String.format
2016/12/16 Javascript
解决Node.js使用MySQL出现connect ECONNREFUSED 127.0.0.1:3306的问题
2017/03/09 Javascript
ES6的解构赋值实例详解
2019/05/06 Javascript
JavaScript实现栈结构Stack过程详解
2020/03/07 Javascript
JavaScript实现复选框全选和取消全选
2020/11/20 Javascript
vue-resource 拦截器interceptors使用详解
2021/01/18 Vue.js
[43:32]Winstrike vs VGJ.S 2018国际邀请赛淘汰赛BO3 第一场 8.23
2018/08/24 DOTA
Python实现的爬取网易动态评论操作示例
2018/06/06 Python
Django对models里的objects的使用详解
2019/08/17 Python
Python类中self参数用法详解
2020/02/13 Python
calendar在python3时间中常用函数举例详解
2020/11/18 Python
HTML5本地存储之Web Storage详解
2016/07/04 HTML / CSS
经典优秀毕业生求职信范文分享
2013/12/18 职场文书
党委班子对照检查材料
2014/08/19 职场文书
2014年教师党员自我评价范文
2014/09/22 职场文书
房屋产权证明书
2015/06/19 职场文书
2016新年问候语大全
2015/11/11 职场文书
2016年读书月活动总结范文
2016/04/06 职场文书
Python+Matplotlib+LaTeX玩转数学公式
2022/02/24 Python
HTML页面点击按钮关闭页面的多种方式
2022/12/24 HTML / CSS