制作wordpress主題時,首頁、分類頁、搜索頁的分頁效果是需要考量的,尤其是wordpress博客類主題,首頁也是需要考慮在內的。如果分頁設置不好,就有可能出現有些分頁出現404的現象,我就曾經碰到過這樣一個主題:首頁分頁效果正常,分類頁后幾頁出現404現象。下面提供2種方案分頁。
方案1:首頁與分類頁的分頁放到1個勾子里。
在function.php文件里添加如下代碼:
- 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篇文章
- } //Vevb.com
- }
- add_action('pre_get_posts','custom_posts_per_page');
方案2、首頁與分類頁分頁分開放到2個不同的勾子里。
首頁與分類文章每頁數量分開來設置:
- //限制首頁文章每頁數量
- 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 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 來限制。
新聞熱點
疑難解答
圖片精選