1.整合Bootstrap分页代码

* 因为wordpress默认仅仅提供简单分页, 所以要实现数字分页,需要自定义函数,wordpress可以结合bootstrap制作分页,bootstrap提供了分页的样式,可以减少对样式的书写。

1.复制下面的代码到functions.php函数中

/**
* 数字分页函数
* @Param int $range 数字分页的宽度
* @Return string|empty 输出分页的HTML代码
*/
function bootstrap_pagenavi( $range = 4 ) {
global $paged,$wp_query;
if ( !$max_page ) {
$max_page = $wp_query->max_num_pages;
}
if( $max_page >1 ) {
echo "<div class='pagination'>";
if( !$paged ){
$paged = 1;
}
if( $paged != 1 ) {
echo "<li><a href='".get_pagenum_link(1) ."' title='跳转到首页'>首页</a></li>";
}
echo '<li>';previous_posts_link('上一页');echo '</li>'; if ( $max_page >$range ) {
if( $paged <$range ) {
for( $i = 1; $i <= ($range +1); $i++ ) {
echo "<li"; if($i==$paged)echo " class='active'";
echo " ><a href='".get_pagenum_link($i) ."'"; echo ">$i</a></li>";
}
}elseif($paged >= ($max_page -ceil(($range/2)))){
for($i = $max_page -$range;$i <= $max_page;$i++){
echo "<li"; if($i==$paged)echo " class='active'";
echo " ><a href='".get_pagenum_link($i) ."'"; echo ">$i</a></li>";
}
}elseif($paged >= $range &&$paged <($max_page -ceil(($range/2)))){
for($i = ($paged -ceil($range/2));$i <= ($paged +ceil(($range/2)));$i++){
echo "<li"; if($i==$paged)echo " class='active'";
echo " ><a href='".get_pagenum_link($i) ."'"; echo ">$i</a></li>";
}
}
}else{
for($i = 1;$i <= $max_page;$i++){
echo "<li"; if($i==$paged)echo " class='active'";
echo " ><a href='".get_pagenum_link($i) ."'"; echo ">$i</a></li>";
}
}
echo '<li>'; next_posts_link('下一页');echo '</li>';
if($paged != $max_page){
echo "<li><a href='".get_pagenum_link($max_page) ."' title='跳转到最后一页'>尾页</a></li>";
}
echo '<span>共['.$max_page.']页</span>';
echo "</div>\n";
}
}

2.在category.php或者归档页面archive.php或者其他模板文件中都可以。

<?php bootstrap_pagenavi();?>

最终效果:

如果把函数中的div类. pagination改成.pager,则效果图如下:

如果没有使用bootstrap框架,可以复制下面css文件实现样式

/*------------------
分页部分的CSS
------------------*/
.pagination{
height: 25px;
line-height: 25px;
_background: #F9F9F9;
padding: 2px 5px;
margin: 20px 4px;
_border: solid 1px #ccc;
_text-align: center;
} .pagination a{
padding:4px 6px 4px 6px;
margin:0 2px 0 2px;
border:1px solid #aaa;
text-decoration:none;
color:#333;
} .pagination a.active{
background:#ff6f3d;
color:#fff;
} .pagination a:hover{
background:#ff6f3d;
color:#fff;
}

WordPress 整合Bootstrap制作分页代码的更多相关文章

  1. ThinkPHP 整合Bootstrap Ajax分页

    ThinkPHP Ajax分页代码 publicfunction index() { $where=array(); $name = I('name'); if(!empty($name)){ $wh ...

  2. 基于BootStrap的分页代码实现

    public class PageUtil { //targetUrl 访问url totalNum总记录数 currentPage 当前页数 pageSize每页的大小 public static ...

  3. 使用KnockoutJs+Bootstrap实现分页

    [后端人员耍前端系列]KnockoutJs篇:使用KnockoutJs+Bootstrap实现分页   一.引言 由于最近公司的系统需要改版,改版的新系统我打算使用KnockoutJs来制作Web前端 ...

  4. Angularjs + Bootstrap 制作的一个TODO List

    看了一个关于Angularjs的视频,视频内容讲解的是如何制作一款TODO list形式的SPA(Simple Page Application,单页面应用).为了增强理解,下面写了一篇文章,用以复习 ...

  5. Bootstrap<基础四> 代码

    Bootstrap 允许您以两种方式显示代码: 第一种是 <code> 标签.如果您想要内联显示代码,那么您应该使用 <code> 标签. 第二种是 <pre> 标 ...

  6. bootstrap制作搜索框及添加回车搜索事件

    下面是开发中用bootstrap制作的一个搜索框,以及给搜索框添加回车搜索事件的一个小案例. bootstrap制作搜索框及添加回车搜索事件 下面是功能实现的代码: <!DOCTYPE html ...

  7. Bootstrap Paginator分页插件

    Bootstrap Paginator分页插件使用示例 最近做的asp.netMVC项目中需要对数据列表进行分类,这个本来就是基于bootstrap开发的后台,因此也就想着bootstrap是否有分页 ...

  8. JAVAEE——BOS物流项目05:OCUpload、POI、pinyin4J、重构分页代码、分区添加、combobox

    1 学习计划 1.实现区域导入功能 n OCUpload一键上传插件使用 n 将文件上传到Action n POI简介 n 使用POI解析Excel文件 n 完成数据库操作 n 使用pinyin4J生 ...

  9. phpcms v9模板制作常用代码集合(转)

    phpcms v9模板制作常用代码集合(个人收藏) 1.截取调用标题长度 {str_cut($r[title],36,'')} 2.格式化时间 调用格式化时间 2011-05-06 11:22:33 ...

  10. phpcms v9模板制作常用代码集合

    phpcms v9模板制作常用代码集合(个人收藏) 1.截取调用标题长度 {str_cut($r[title],36,'')} 2.格式化时间 调用格式化时间 2011-05-06 11:22:33 ...

随机推荐

  1. MVC架构设计浅析(WEB网页开发)

    MVC架构设计浅析 杨传伟 (石家庄铁道大学信息科学与技术学院,河北省,石家庄市,050043) 摘 要:本文以图书管理系统为案例(当前主流框架SpringMVC的原理来分析MVC的设计理念等),深入 ...

  2. 开源车牌识别系统HyperLPR踩坑

    项目地址 https://github.com/zeusees/HyperLPR python配置参考文章 https://www.jianshu.com/p/7ab673abeaae 安装Anaco ...

  3. #点分治,树状数组#洛谷 5311 [Ynoi2011] 成都七中

    题目 给你一棵 \(n\) 个节点的树,每个节点有一种颜色,有 \(m\) 次查询操作. 查询操作给定参数 \(l\) \(r\) \(x\),需输出: 将树中编号在 \([l,r]\) 内的所有节点 ...

  4. 深入理解HashMap和LinkedHashMap的区别

    目录 简介 LinkedHashMap详解 插入 访问 removeEldestEntry 总结 深入理解HashMap和LinkedHashMap的区别 简介 我们知道HashMap的变量顺序是不可 ...

  5. 本周四晚19:00知识赋能第七期第2课丨OpenHarmony WiFi扫描仪UX设计

    8月18日19:00~20:00,第七期知识赋能第二节直播就要开始啦!如果你是缺乏实战经验的学生,如果你是初出茅庐的职场新人,如果你是想参与开源的贡献者,那么本期的直播课将不容错过!通过本期直播,开发 ...

  6. C 语言函数:入门指南

    C 语言中的函数声明和定义 您可以通过以下方式创建并调用函数: // 创建一个函数 void myFunction() { printf("我刚被执行了!"); } int mai ...

  7. C# Winform Socket点对点通信

    前言 Socket的英文原义是"孔"或"插座",其实在网络编程中Socket就是这个意思,就像我们打电话,要首先知道对方的手机号一样,这个手机号就相当于一个So ...

  8. scala 生成指定日期范围的list

    可以通过scala中的流处理,生成指定范围内的日期list import java.time.LocalDate def dateStream(fromDt:LocalDate):Stream[Loc ...

  9. linux ssh连接

    前言 整理以前的随笔. 正文 首先更新源 sudo apt-get update 安装ssh服务 sudo apt-get install openssh-server 检测是否已启动 ps -e | ...

  10. 学Windows批处理第一天:使用批处理命令生成一个文件并写入内容

    脚本功能:1.生成一个文件,文件名格式为:yyyymmddhhmmss 2.文件中写入一段文本 操作步骤:1.新建一个文本文档(txt格式) 2.修改文件名为任意名称(我的叫create_file), ...