2016-07-11 7 views
1

これはindex.phpのコードです。 「古い投稿」をクリックすると、最初のページの内容が表示されます。デフォルトのループのみが改ページで機能します。WordPressでは、query_posts()を使用していると、ページネーションが機能しないのはなぜですか?

<?php 
    query_posts('showposts=10'); 
    query_posts("cat=2"); 
    if(have_posts()): 

     while(have_posts()): the_post(); ?> 

      <?php get_template_part('content',get_post_format()); ?> 

     <?php endwhile; ?> 

      <?php next_posts_link('« Older Posts'); ?> 
      <?php previous_posts_link('Newer Posts »'); ?> 

    <?php endif; 
     wp_reset_query(); 
    ?> 

答えて

0

query_posts()それがメインクエリを上書きして、あなたの場合、デフォルトでdoes not support paginationに固有うとして、使用のためにこの方法をお勧めしません。おそらくget_posts()を使用するか、WP_Queryオブジェクトを使用してください。

query_posts()を使用する必要がある場合は、pagedパラメータをクエリに追加する方法について、上記のリンクに関する説明があります。

ここでも同じコードですが、get_posts()を使用しています。

<?php 
$args = array('numberposts' => 10, 'category' => 2); 
$posts = get_posts($args); 
foreach($posts as $post) { 
    // Use the $post object here in your content template 
    <?php get_template_part('content',get_post_format()); ?> 
} 
<?php next_posts_link('« Older Posts'); ?> 
<?php previous_posts_link('Newer Posts »'); ?> 
関連する問題