wordpress主題首頁與分類頁的分頁實現

製做wordpress主題時,首頁、分類頁、搜索頁的分頁效果是須要考量的,尤爲是wordpress博客類主題,首頁也是須要考慮在內的。若是分頁設置很差,就有可能出現有些分頁出現404的現象,我就曾經碰到過這樣一個主題:首頁分頁效果正常,分類頁後幾頁出現404現象。下面提供2種方案分頁。php

方案1:首頁與分類頁的分頁放到1個勾子裏。wordpress

在function.php文件裏添加以下代碼:post

function custom_posts_per_page($query){
if(is_home()){
$query->set('posts_per_page',8);//首頁每頁顯示8篇文章
}
if(is_search()){
$query->set('posts_per_page',-1);//搜索頁顯示全部匹配的文章,不分頁
}
if(is_archive()){
$query->set('posts_per_page',25);//archive每頁顯示25篇文章
}
}
add_action('pre_get_posts','custom_posts_per_page');get

方案二、首頁與分類頁分頁分開放到2個不一樣的勾子裏。博客

首頁與分類文章每頁數量分開來設置:io

//限制首頁文章每頁數量
function custom_posts_per_page($query){
if(is_home()){
$query->set('posts_per_page',8);//首頁每頁顯示8篇文章
}
}
add_action('pre_get_posts','custom_posts_per_page');function

//限制分類頁文章每頁數量
function custom_posts_per_page2($query){
if(is_archive()){
$query->set('posts_per_page',25);//archive每頁顯示25篇文章
}//endif
}
add_action('pre_get_posts','custom_posts_per_page2');搜索

這樣,就不須要在循環中來設置每頁顯示文章數量,避免「最後一頁404」的狀況發生。循環

注:在列表循環 query_posts()中,不要再使用posts_per_page來限制數量,能夠使用showposts 來限制。分頁

相關文章
相關標籤/搜索