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中文URL编解码(urlencode()rawurlencode()
Jul 03 PHP
PHP 杂谈《重构-改善既有代码的设计》之三 重新组织数据
Apr 09 PHP
基于PHP选项与信息函数的使用详解
May 10 PHP
使用PHP静态变量当缓存的方法
Nov 13 PHP
PHP生成自适应大小的缩略图类及使用方法分享
May 06 PHP
10个超级有用值得收藏的PHP代码片段
Jan 22 PHP
PHP实现的简单分页类及用法示例
May 06 PHP
PHP Ajax实现无刷新附件上传
Aug 17 PHP
PHP实现简易计算器功能
Aug 28 PHP
PHP正则验证字符串是否为数字的两种方法并附常用正则
Feb 27 PHP
PHP实现Markdown文章上传到七牛图床的实例内容
Feb 11 PHP
tp5.1 框架数据库高级查询技巧实例总结
May 25 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编写一个简单的路由类
2011/04/13 PHP
如何用php获取文件名后缀
2013/06/09 PHP
Symfony2在Nginx下的配置方法图文教程
2016/02/04 PHP
js DataSet数据源处理代码
2010/03/29 Javascript
JavaScript使用IEEE 标准进行二进制浮点运算产生莫名错误的解决方法
2011/05/28 Javascript
JqGrid web打印实现代码
2011/05/31 Javascript
禁止选中文字兼容IE、Chrome、FF等
2013/09/04 Javascript
利用javascript实现web页面中指定区域打印
2013/10/30 Javascript
javascript在网页中实现读取剪贴板粘贴截图功能
2014/06/07 Javascript
document.forms用法示例介绍
2014/06/26 Javascript
jQuery模拟黑客帝国矩阵效果实例
2015/06/28 Javascript
AngularJS ng-controller 指令简单实例
2016/08/01 Javascript
微信小程序 免费SSL证书https、TLS版本问题的解决办法
2016/12/14 Javascript
vue-cli构建项目下使用微信分享功能
2018/05/28 Javascript
vue中el-upload上传图片到七牛的示例代码
2018/10/19 Javascript
在element-ui的el-tree组件中用render函数生成el-button的实例代码
2018/11/05 Javascript
利用Vconsole和Fillder进行移动端抓包调试方法
2019/03/05 Javascript
小程序getLocation需要在app.json中声明permission字段
2019/04/04 Javascript
vuex vue简单使用知识点总结
2019/08/29 Javascript
layui 上传文件_批量导入数据UI的方法
2019/09/23 Javascript
解决vue打包 npm run build-test突然不动了的问题
2020/11/13 Javascript
[00:18]天涯墨客三技能展示
2018/08/25 DOTA
详解Django框架中的视图级缓存
2015/07/23 Python
python使用os.listdir和os.walk获得文件的路径的方法
2017/12/16 Python
python安装教程
2018/02/28 Python
win10系统下python3安装及pip换源和使用教程
2020/01/06 Python
python匿名函数lambda原理及实例解析
2020/02/07 Python
Sentry错误日志监控使用方法解析
2020/11/12 Python
HTML5 Canvas实现图片缩放、翻转、颜色渐变的代码示例
2016/02/28 HTML / CSS
创立科技Java面试题
2015/11/29 面试题
你懂得怎么写自荐信吗?
2013/12/27 职场文书
2014新生大学四年计划书
2014/09/21 职场文书
端午节活动总结报告
2015/02/11 职场文书
员工安全责任协议书
2016/03/22 职场文书
redis击穿 雪崩 穿透超详细解决方案梳理
2022/03/17 Redis
Python使用plt.boxplot()函数绘制箱图、常用方法以及含义详解
2022/08/14 Python