首页 > 解决方案 > 循环和列表视图中的 WooCommerce 产品

问题描述

我想在循环中显示每个 WooCommerce 产品 while ( $loop -> have_posts() ) : $loop -> the_post(); 同时使用以下内容显示在列表视图中:

do_action( 'woocommerce_single_product_summary');

谁能给我提供一种方法来实现这一目标?

这是我的以下代码:

<ul class="products">
<?php
    $args = array( 'post_type' => 'product', 'posts_per_page' => 3 );
    $loop = new WP_Query( $args );

      $interval = 1;

      while ( $loop -> have_posts() ) : $loop -> the_post();

      $productId = get_the_ID();
      $product = get_product( $productId );
      ?>

              <?php if ($interval % 2 != 0): ?>
                <img class="arch" src="/wp-content/uploads/2019/02/main-pages-blue-background-arch-top.png">
              <?php endif; ?>

              <li class="product" style="<?php echo ($interval % 2 != 0 ? "background-color: #f2fafd" : ""); ?>">
                <div class="content">
                  <a href="<?php echo get_permalink( $loop -> post -> ID ) ?>" title="<?php echo esc_attr($loop -> post -> post_title ? $loop -> post -> post_title : $loop -> post -> ID); ?>">

                        do_action( 'woocommerce_before_single_product' );


                  </a>

                </div>
                  <!-- <?php woocommerce_template_loop_add_to_cart( $loop-> post, $product ); ?> -->
              </li>

              <?php if ($interval % 2 != 0): ?>
                <img class="arch arch-bottom" src="/wp-content/uploads/2019/02/main-pages-white-background-arch-top.png">
              <?php endif; ?>

              <?php $interval += 1; ?>
      <?php endwhile; ?>
    <?php wp_reset_query(); ?>
</ul>

本质上,我试图将单个产品放在列表视图中,然后循环遍历特定类别的每个产品。

谢谢。

标签: phpwordpresswoocommerce

解决方案


推荐阅读