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. Java,substring( )方法

    该方法可以获取一个String字符串的(x,y)个字符. 其中x和y是左闭右开的,左边的可以取到,右边的取不到,并且索引从0开始. 例如 1 String text = "reliableY ...

  2. 《梦断代码》(《Dreaming in Code》)读书笔记

    <梦断代码>(<Dreaming in Code>)读书笔记 在看了这本书之后,我在豆瓣看到一段书评:做软件难.软件乃是人类自以为最有把握,实则最难掌控的技术.这本书揭示了好多 ...

  3. 【WiFi开发全攻略】WIFI常用工具汇总

    [WiFi开发全攻略]WIFI常用工具汇总 本节主要介绍我们开发过程中,WiFi常用的开发工具,内容主要介绍工具种类以及基本的使用方法,更多使用可以见后面章节. 1.iwconfig iwconfig ...

  4. Advanced .Net Debugging 6:程序集加载器

    一.简介 这是我的<Advanced .Net Debugging>这个系列的第六篇文章.这篇文章的内容是原书的第二部分的[调试实战]的第四章.这章主要讲的是程序集加载器,比如:CLR 加 ...

  5. #01背包#洛谷 4161 [SCOI2009]游戏

    题目 将 \(n\) 拆成若干个正整数的和, 问这些正整数的LCM有多少种 \(n\leq 10^3\) 分析 考虑这个\(LCM\)一定是1或者由若干个质数的指数幂相乘得到的, 那么可以设\(dp[ ...

  6. #费马小定理#JZOJ 4015 数列

    题目 给出\(x_n=(ax_{n-1}^2+bx_{n-1}+c)\bmod m\) 给出\(x_0.a,b,c,n,m\),求\(x_n\) \(\text{Subtask 1:}n\leq 10 ...

  7. #trie,动态规划#洛谷 2292 [HNOI2004]L语言

    题目 分析 建一棵trie,然后匹配最长前缀可以用\(dp\)做, 如果这个位置可以被匹配到那么可以从这个位置继续匹配 代码 #include <cstdio> #include < ...

  8. #完全背包输出具体方案#AT4298 [ABC118D] Match Matching

    题目 分析 首先,用完全背包求出\(n\)根火柴能够组成的最大位数, 然后选择尽量大的数字拼凑即可 代码 #include <cstdio> #include <cctype> ...

  9. django ORM 按月分组统计

    一.搭建环境,准备数据 1.1:新建项目 django-admin startproject Test 1.2:新建app python manage.py startapp app 1.3:设置 s ...

  10. openGauss关于PL/SQL匿名块调用测试

    openGauss 关于 PL/SQL 匿名块调用测试 一.原理介绍 PL/SQL(Procedure Language/Structure Query Language)是标准 SQL 语言添加了过 ...