web-dev-qa-db-ja.com

posts_per_pageが機能しない

何らかの理由でposts_per_pageパラメータが機能しません。私はすでにテンプレートの最初の方でそれを呼び出し、私はwp_reset_query()を使いました、それでも2番目のインスタンスでは動作しません。何かアイディアは?

 <div class="new_home_single">
<ul>
  <?php $the_query = new WP_Query( 'posts_per_page=6' ); ?>

  <?php while ($the_query -> have_posts()) : $the_query -> the_post(); ?>
  <div class="posting_classs">
<a href="<?php the_permalink()?>">
    <?php 
   /*****     Thumbnail     ******/
   the_post_thumbnail(
    array(280, 150), 
    array(

    'class' => 'thumbnail_class',  //custom class for post thumbnail if any 
        'alt' => 'post thumbnail', //post thumbnail alternate title
    'title' => 'my custom title'   //Title of thumbnail
    )
   );?></a>

    <div id="post-<?php the_ID(); ?>" <?php post_class( 'post_box' ); ?>>


    <h2 class="title_home"><a href="<?php the_permalink() ?>">
     <?php echo ShortenText(get_the_title()) ; ?></a></h2>

        <img src= "<?php echo $imglink; ?>calendar.png"    class="recent_post_date_img"><div class="date_wrap"><p class="date1"><?php     the_date('m-d-Y', '', ''); ?></p></div>

   <div class="comment_wrap"> <?php comments_popup_link("$comm_link 0",   "$comm_link1", "% $comm_link"); ?></div>
   <div class="excerpt_class">
            <?php echo the_excerpt(25); ?>
  </div>        
    </div>
  </div>

  <?php
  endwhile;
  wp_reset_postdata();
  wp_reset_query();

  ?>
</ul>


</div>
</div>

 <div class="sidebar1"><?php dynamic_sidebar( 'sidebar-1' );?></div>


   <div class="gap"></div>
    <?php $the_query2 = new WP_Query( 'cat=10', 'posts_per_page=1' );

    while ($the_query2 -> have_posts()) : $the_query2 -> the_post(); ?>            
        <a href="<?php the_permalink()?>">
        <div class="wrap_video">  
         <div class="play_button"> </div>

    <?php 
   /*****     Thumbnail     ******/
  the_post_thumbnail(
      array(200, 200), 
      array(

      'class' => 'video_class_thumb',  //custom class for post thumbnail if   any 
        'alt' => 'post thumbnail', //post thumbnail alternate title
        'title' => 'my custom title' 
        )
    );?>
</div>
</a>

<?php   endwhile;     
wp_reset_query();?>
</div>
1
geektripp

2番目のクエリの問題は、パラメータの受け渡し方法によるものです。元のコードでは、2つの文字列が渡されていますが、これは機能しません。

 $the_query2 = new WP_Query( 'cat=10', 'posts_per_page=1' );

配列を使うことができます(推奨される方法):

$the_query2 = new WP_Query( array( 
    'cat' => '10',
    'posts_per_page' => '1'
) );

またはクエリ文字列を使用します。

 $the_query2 = new WP_Query( 'cat=10&posts_per_page=1' );
3
Dave Romsey