0

我正在尝试以某种方式显示来自 post_type 的帖子:使用查询显示第一个帖子类型,然后在下一个查询中跳过第一个帖子并显示第二个帖子,依此类推。

我试图用偏移量来做到这一点,第一篇文章显示但下一篇没有显示。有没有更优雅的方法来实现这一点?

        <div class="tableCell">
          <?php
          $args = array( 'post_type' => 'service', 'offset' => 1);  
          $loop = new WP_Query( $args );
          while ( $loop->have_posts() ) : $loop->the_post(); ?>
          <div class="flip">
              <a href="#">
                  <div class="flip-front">
                      <div class="imgHolder">
                <?php the_post_thumbnail(); ?>
                </div>
                <h3><?php the_title(); ?></h3>
                  </div>
                  <div class="flip-back">
                      <div class="imgHolder">
                <?php the_post_thumbnail(); ?>
                </div>
                <h3><?php the_title(); ?></h3>
                  </div>
              </a>
          </div>
          <?php endwhile; ?>
        </div>

        <div class="tableCell">
          <?php
          $args = array( 'post_type' => 'service', 'offset' => 2);  
          $loop = new WP_Query( $args );
          while ( $loop->have_posts() ) : $loop->the_post(); ?>
          <div class="flip">
              <a href="#">
                  <div class="flip-front">
                      <div class="imgHolder">
                <?php the_post_thumbnail(); ?>
                </div>
                <h3><?php the_title(); ?></h3>
                  </div>
                  <div class="flip-back">
                      <div class="imgHolder">
                <?php the_post_thumbnail(); ?>
                </div>
                <h3><?php the_title(); ?></h3>
                  </div>
              </a>
          </div>
          <?php endwhile; ?>
        </div>
4

1 回答 1

1

对于初学者 -当您在一页上wp_reset_postdata有多个时使用它是健康的。wp_queries

就你的问题而言。第一个帖子类型不需要偏移量,第二个帖子类型应该偏移 1(减去第一个)

<div class="tableCell">
          <?php
          $args = array( 'post_type' => 'service', 'posts_per_page' => 1);  
          $loop = new WP_Query( $args );
          while ( $loop->have_posts() ) : $loop->the_post(); ?>
          <div class="flip">
              <a href="#">
                  <div class="flip-front">
                      <div class="imgHolder">
                <?php the_post_thumbnail(); ?>
                </div>
                <h3><?php the_title(); ?></h3>
                  </div>
                  <div class="flip-back">
                      <div class="imgHolder">
                <?php the_post_thumbnail(); ?>
                </div>
                <h3><?php the_title(); ?></h3>
                  </div>
              </a>
          </div>
          <?php endwhile; wp_reset_postdata(); ?>
        </div>
<div class="tableCell">
          <?php
          $args2 = array( 'post_type' => 'service', 'offset' => 1);  
          $loop2 = new WP_Query( $args2 );
          while ( $loop2->have_posts() ) : $loop2->the_post(); ?>
          <div class="flip">
              <a href="#">
                  <div class="flip-front">
                      <div class="imgHolder">
                <?php the_post_thumbnail(); ?>
                </div>
                <h3><?php the_title(); ?></h3>
                  </div>
                  <div class="flip-back">
                      <div class="imgHolder">
                <?php the_post_thumbnail(); ?>
                </div>
                <h3><?php the_title(); ?></h3>
                  </div>
              </a>
          </div>
          <?php endwhile; wp_reset_postdata(); ?>
        </div>
于 2013-08-09T14:16:09.710 回答