首页 » 建站技术 » WordPress » 浏览内容

[非插件] 实现 WordPress 分页导航


2010-09-18 17:22:43 2,741 0 发表评论 字体: 作者:C.K.
标签: WordPress

体验版 88 元,个人版 128 元,多用户版 288元个人版160元升级到多用户版。

距上一次真正折腾WP已经相隔好几个月了,是由于期间各种原因叠加所致,无奈呀,杯具呀!

话说WP自带的就“较早文章”和“最近文章”两个内置函数,首页文章显示数又有限,如果要看很早以前的,那要翻得哟~所以我们希望有一排数字,可以让我们喜欢点哪一页就哪一页。

今天分享的是用纯代码来实现分页导航,先看效果图:

page-nav.jpg

怎样?效果还过得去吧!有俺强力CSS代码技术做后盾,不怕做不出就怕想不出好样式~哇哈哈,臭屁臭屁了……

进入折腾步骤:

一、添加功能代码至 functions.php(的php循环内)

function par_pagenavi($range = 9){
  • global $paged, $wp_query;
  • if ( !$max_page ) {$max_page = $wp_query->max_num_pages;}
  • if($max_page > 1){if(!$paged){$paged = 1;}
  • if($paged != 1){echo "<a class="extend" title="跳转到首页" href="&quot; . get_pagenum_link(1) . &quot;"> 返回首页 </a>";}
  • previous_posts_link(' 上一页 ');
  • if($max_page &gt; $range){
  • if($paged &lt; $range){for($i = 1; $i &lt;= ($range + 1); $i++){echo "<a class="current" href="&quot; . get_pagenum_link($i) .&quot;">$i</a>";}}
  • elseif($paged &gt;= ($max_page - ceil(($range/2)))){
  • for($i = $max_page - $range; $i &lt;= $max_page; $i++){echo "<a class="current" href="&quot; . get_pagenum_link($i) .&quot;">$i</a>";}}
  • elseif($paged &gt;= $range &amp;&amp; $paged &lt; ($max_page - ceil(($range/2)))){
  • for($i = ($paged - ceil($range/2)); $i &lt;= ($paged + ceil(($range/2))); $i++){echo "<a class="current" href="&quot; . get_pagenum_link($i) .&quot;">$i</a>";}}}
  • else{for($i = 1; $i &lt;= $max_page; $i++){echo "<a class="current" href="&quot; . get_pagenum_link($i) .&quot;">$i</a>";}}
  • next_posts_link(' 下一页 ');
  • if($paged != $max_page){echo "<a class="extend" title="跳转到最后一页" href="&quot; . get_pagenum_link($max_page) . &quot;"> 最后一页 </a>";}}
  • }

  • 二、添加美化代码至主题style.css

    .page_navi{width:100%;height:36px;line-height:36px;text-align:center;overflow:hidden;padding-top:1em;}
  • .page_navi a{padding:3px 8px;margin:2px;text-decoration:none;color:#888;border:1px solid #ccf;}
  • .page_navi a:hover,.page_navi a.current{border:1px solid #356aa0;color:#356aa0;font-weight:bolder;}
  • 三、添加调用代码至主题index.php、archive.php、category.php、search.php

    <div class="page_navi"><?php par_pagenavi(9); ?></div>

    OK,大功造成!又可以干掉一个已为数不多的插件咯!

    注:文内核心代码来源于 http://www.ei2u.com/wordpress/work/273.html

      网站统计 Statistics

      • 创建时间: 2005年1月3日 距今4947 天
      • 日志总数: 2461
      • 评论总数: 630
      • 标签总数: 654
      • 链接总数: 273
      • 最后更新: 2017-7-1 18:16:33
      • 您是本站第 13718305 位访客

      广告区 Guǎng Gào