現在位置: 首頁 > 電腦科技 > wordpress > 模板修改 > 正文
WordPress – 不用插件加入文章分頁
2010年12月27日 模板修改 ⁄ 共 1900字 暂无评论 ⁄ 被围观 3,428 views+

看到一個不用安裝插件pagenavi的話,就可以做到文章分頁功能。

實在強大。

是台灣大師修改的code。

首先打開theme入面的function.php。

如果用twenty ten的話,在endif 前面 加入如下代碼:


/* Mini Pagenavi v1.0 by Willin Kan. Edit by zwwooooo */

if ( !function_exists('pagenavi') ) {

function pagenavi( $p = 5 ) { // 取當前頁前後各 2 頁

if ( is_singular() ) return; // 文章與插頁不用

global $wp_query, $paged;

$max_page = $wp_query->max_num_pages;

if ( $max_page == 1 ) return; // 只有一頁不用

if ( empty( $paged ) ) $paged = 1;

echo 'Page: ' . $paged . ' of ' . $max_page . '  '; // 顯示頁數

if ( $paged > 1 ) p_link( $paged - 1, '上一頁', '? Previous' );/* 如果當前頁大於1就顯示上一頁鏈接 */

if ( $paged > $p + 1 ) p_link( 1, '最前頁' );

if ( $paged > $p + 2 ) echo '... ';

for( $i = $paged - $p; $i <= $paged + $p; $i++ ) { // 中間頁

if ( $i > 0 && $i <= $max_page ) $i == $paged ? print "{$i} " : p_link( $i );

}

if ( $paged < $max_page - $p - 1 ) echo '... ';

if ( $paged < $max_page - $p ) p_link( $max_page, '最後頁' );

if ( $paged < $max_page ) p_link( $paged + 1,'下一頁', 'Next ?' );/* 如果當前頁不是最後一頁顯示下一頁鏈接 */

}

function p_link( $i, $title = '', $linktype = '' ) {

if ( $title == '' ) $title = "第 {$i} 頁";

if ( $linktype == '' ) { $linktext = $i; } else { $linktext = $linktype; }

echo "{$linktext} ";

}

}

// -- END


之後呢,在需要使用到這翻頁功能的地方加入如下代碼:

<div class="pagenavi"><?php if (function_exists('pagenavi')); ?><?php pagenavi(); ?></div>

一般需要用到翻頁導航的地方是首頁index.php,文章歸檔頁archive.php,標籤頁tag.php,  分類目錄頁category.php等檔案,以我使用的Wordpress預設主題Twenty Ten為例,打開這些檔案後,都將代碼放在<div id=”content” role=”main”>‧‧‧ ‧‧‧</div><!   #content   >這對<div>之間的最底部,也就是放在</div><!   #content   >之前。原來的“較新的文章”和“較舊的文章”這兩句就不要了,找到主題中的loop.php檔案, 將裡面的<div id=”nav-below” class=”navigation”>和</div><!   #nav-below   >之間的內容刪掉即可,其它主題應該視情況而定了。

之後可以為文章分頁導航列做一下css化,當然是放入style.css啦。

#pagenavi{margin:5px 10px;}.page-numbers{line-height:16px;margin:0;padding:1px 2px;text-decoration:none;border:2px solid #E6F7FF;color:#c60;}.page-numbers:hover{background:#777e77; color:#bbc0bb;}.current, .current:hover{color:#650;background:#E7F6FB;}

有興致的可以自己修改一下。

參考: http://www.eyingworld.com/wordpress-navigation-without-plugin.html