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. 禅道16.2版本发布!主要新增专业研发看板,修复Bug

    大家好,禅道16.2发布了,本次发布在项目管理模型层面新增了专业研发看板功能,今后禅道全面支持Scrum.瀑布.看板3种项目管理模型,功能更加健全,用户选择更加灵活. 视频地址:https://www ...

  2. Docker容器编排技术解析与实践

    本文全面探索了容器编排技术的核心概念.工具和高级应用,包括Docker Compose.Kubernetes等主要平台及其高级功能如网络和存储管理.监控.安全等.此外,文章还探讨了这些技术在实际应用中 ...

  3. #直径#CF804D Expected diameter of a tree

    题目 给一片森林,\(q\) 个询问,每个询问两个点, 问将这两个点所在的集合连接起来组成的新集合,它的最远两点的距离的期望值是多少. 分析 首先将以每个点为根的最大深度求出来,然后对于两棵树, 只有 ...

  4. OpenHarmony Meetup 深圳站招募令

      OpenHarmony Meetup城市巡回深圳站火热来袭!! 日期:2023年10月15日14:00 地点:深圳市福田区上步路中路1003号 深圳市科学馆 与OpenHarmony技术大咖近距离 ...

  5. OpenHarmony开发之MQTT讲解

      相信MQTT这个名称大家都不陌生,物联网的开发必然会遇到MQTT相关知识的应用.那么什么是MQTT?它有什么特点?它能解决什么问题?它是如何工作的?OpenAtom OpenHarmony(以下简 ...

  6. Seaborn线性关系数据可视化

    regplot() 绘制两个变量的线性拟合图. sns.regplot( x, y, data=None, x_estimator=None, x_bins=None, x_ci='ci', scat ...

  7. Spring源码 19 IOC getBean方法

    前面实现了 ClassPathXmlApplicationContext 的构造,接下来分析其调用的 getBean 方法. 以 getBean(UserDao.class) 为例. 1 Abstra ...

  8. Qt操作ini文件

    操作文件,无非就是读与写,以下为Qt读写ini文件的代码. demo: #include "widget.h" #include <QApplication> #inc ...

  9. redis 面试题整理

    前言 前天面试了一家公司,平时看一本redis书的也使用redis,对里面的东西也基本了解,结果回答的时候居然回答了只是使用了(因为认为是redis是运维的东西,做的东西多,所以忘了,好吧这是借口), ...

  10. Pytorch-tensor的分割,属性统计

    1.矩阵的分割 方法:split(分割长度,所分割的维度),split([分割所占的百分比],所分割的维度) a=torch.rand(32,8) aa,bb=a.split(16,dim=0) pr ...