2016-08-22 61 views
2

我創建了一個名爲archive-key_piece.php的自定義模板以容納自定義帖子類型'Key Pieces'。我想在posts_per_page從10個職位,使用query_posts('post_type=key_piece&posts_per_page=12&paged='.$paged);WordPresspress:query_posts()在自定義帖子類型的存檔中禁用next_posts_link()

的問題是,當我使用query_posts(),它完全禁用分頁(偶/關鍵件/頁/ 2 /韓元」更改爲12.我也做沒有工作,它只會變成與第1頁相同的結果)。

當我使用

$paged = (get_query_var('paged')) ? get_query_var('paged') : 1; 
query_posts('post_type=key_piece&posts_per_page=12&paged='.$paged); 

這讓我通過URL手動訪問的下一個頁面(關鍵件/頁/ 2 /等),但它仍然禁止next_posts_link()

我也試過這在函數中.php

function number_of_posts_on_archive($query){ 
    if ($query->is_archive) { 
      $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; 
      $query->set('posts_per_page', 12); 
      $query->set('pagination', $paged); 
    } 
    return $query; 
} 

add_filter('pre_get_posts', 'number_of_posts_on_archive'); 

但結果相同。

任何幫助,非常感謝。謝謝!

+0

請勿在WordPress中使用[query_posts](http://stackoverflow.com/documentation/wordpress/4002/querying-posts#t=201608220608201931263)進行發帖查詢。這是非常不鼓勵的。 –

回答

2

你在這裏。

<?php 
    $variable = $WPQuery; 
    $WPQuery = null; 
    $WPQuery = new WPQuery(); 
    $WPQuery->query('showposts=6&post_type=news'.'&paged='.$paged); 

    while ($WPQuery->have_posts()) : $WPQuery->the_post(); 
?> 

    <!-- Template Stuff Here--> 

<?php endwhile; ?> 

<div class="navigation"> 
    <?php previous_posts_link('&laquo; Newer Here') ?> 
    <?php next_posts_link('Older Here &raquo;') ?> 
</div> 

<?php 
    $WPQuery = null; 
    $WPQuery = $variable; // Reset 
?> 

希望它能幫助你。

+0

我試過了,它沒有改變任何東西。然而,它讓我嘗試在我的鏈接前面加上一個 ,這些鏈接可以解決它們出於任何原因。 – Patrick

相關問題