使用wordpress的博友為了使博客更好看都會想到要一個好的分頁,畢竟wordpress默認(rèn)的分頁不怎么美觀。但是,相信剛開始,除了喜歡 倒騰代碼或者具有完美“強迫癥”的童鞋外,一般都會因為嫌麻煩而或者因為對代碼不懂而選擇使用wordpress插件來實現(xiàn)文章的分頁,本人剛開始搭建博 客的時候也是用類似wp-pagenavi翻頁插件來實現(xiàn)的。
但是,大家應(yīng)該都知道wordpress裝太多的插件,因為在這個追求精簡,簡單生活的年代誰也不想代碼冗繁,同時網(wǎng)頁數(shù)據(jù)大,會引起網(wǎng)頁打開速度慢,這樣對訪客也不是很友好。
于是,我們可以通過css樣式以及php分頁函數(shù)來實現(xiàn)wordpress分頁,下面就介紹怎樣利用css+php函數(shù)輕松替代插件來實現(xiàn)wordpress分頁。
首先在css樣式表里添加下面這個樣式:
.pagenavi_badoo {
font-size:12px;
text-align:center;
font-weight:700;
margin:10px 0;
}
.pagenavi_badoo a {
width: 16px;
background:#fff;
color:#22222e;
border:1px solid #ccc;
padding:4px 8px;
-moz-border-radius: 2px;
-webkit-border-radius: 2px;
border-radius: 2px;
}
.pagenavi_badoo a:hover {
background:#252525;
color:#fff;
text-decoration:none;
-moz-border-radius: 2px;
-webkit-border-radius: 2px;
border-radius: 2px;
}
.pagenavi_badoo .pages {
color:#fff;
margin-right:5px;
background:#252525;
padding:4px 8px;
-moz-border-radius: 2px;
-webkit-border-radius: 2px;
border-radius: 2px;
}
.pagenavi_badoo .current {
color:#cbff83;
background:#252525;
padding:4px 8px;
-moz-border-radius: 2px;
-webkit-border-radius: 2px;
border-radius: 2px;
}
添加好樣式后,在function.php這個函數(shù)里面添加分頁函數(shù),具體代碼如下:
if ( !function_exists('pagenavi') ) {
function pagenavi( $p = 7 ) { // 取當(dāng)前頁前后各 2 頁,根據(jù)需要改
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 '<span>頁數(shù):' . $paged . '/' . $max_page . '</span>'; // 顯示頁數(shù)
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 <span class='page-numbers current'>{$i}</span> : p_link( $i );
}
if ( $paged < $max_page - $p - 1 ) echo '... ';
if ( $paged < $max_page - $p ) p_link( $max_page, '最后頁' );
}
function p_link( $i, $title = '' ) {
if ( $title == '' ) $title = 第 {$i} 頁;
echo <a href=', esc_html( get_pagenum_link( $i ) ), ' title='{$title}'>{$i}</a> ;
}
}
添加完上述代碼后,運行下看網(wǎng)站的分頁是不是搞定了,不過有點需要說明,在樣式表里面width以及背景顏色都是按照筆者博客來設(shè)定的,只要適當(dāng)調(diào)整就好。
以上就是如何利用css樣式和php函數(shù)實現(xiàn)wordpress分頁的方法,真正避免過多利用wp插件。如果你有什么建議和問題,歡迎交流指教!