加载剩余自定义帖子的可湿性粉剂方法是什么?

时间:2018-09-13 作者:sashaikevich

我正在显示自定义帖子类型,按照它们的自定义分类法分组(基本上使用了ChipBennett的答案:Display all posts in a custom post type, grouped by a custom taxonomy) 对于网站的产品部分。

但是,我想限制最初显示的产品数量。比如,显示4,如果该类别下有4个以上的产品,那么我想添加一个“加载更多产品”链接,单击该链接后,将该类别中的其余产品加载到页面上。

我可以用一些JS来实现这一点(最初只显示:nth子元素(-n+4),而隐藏其余的子元素),但我怀疑使用WP/PHP有一个更优雅、资源密集度更低的解决方案。

<section id="products" class="padd-me">
  <h1 class="heading centered main-color">Our Products</h1>

  <?php
  $productCategories = get_terms( \'product_taxonomy\' );
  foreach ( $productCategories as $productCategory ) {
    $productQuery = new WP_Query( array(
        \'post_type\' => \'product\',
        \'tax_query\' => array(
            array(
                \'taxonomy\' => \'product_taxonomy\',
                \'field\' => \'slug\',
                \'terms\' => array( $productCategory->slug ),
                \'operator\' => \'IN\'
            )
        )
    ) );

    if ( $productQuery->have_posts() ) {
      ?>
      <div class="product-row">
        <div class="product-title">
          <h3><?php echo $productCategory->name; ?></h3>
        </div>
      <div class="product-pics-wrap">
      <?php
      while ( $productQuery->have_posts() ) {
        $productQuery->the_post();
        $backgroundImg = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), \'full\' );
        ?>
        <a href="<?php the_permalink(); ?>">
          <div class="product-pic" style="background-image:url(\' <?php echo $backgroundImg[0] ?>\');"></div>
        </a>
        <?php
       }
      ?>
        </div>
        <div class="more-products-link-wrap">
          <a class="more-products" href="#">see all products</a>
        </div>
      </div>
      <?php
    };
    ?>

    <?php
    // Reset things, for good measure
    $productQuery = null;
    wp_reset_postdata();
  }
?>

1 个回复
SO网友:Fahad

您可以使用posts\\u per\\u页面扩展QP查询

阅读更多信息,请访问codex.

然后,使用AJAX在按钮单击或页面滚动上加载更多内容。

结束

相关推荐

Is "the loop" a template tag?

模板标记定义如下:模板标记在主题中用于从数据库检索内容。The loop 在模板中从数据库检索(发布)内容,所以她似乎属于这一类。因此,我问:“the loop”(循环)这个在我们有帖子时显示帖子的循环函数,基于我们是否有帖子,实际上应该被视为模板标记吗?