WooCommerce产品循环数据

时间:2018-06-27 10:24:15

标签: php wordpress woocommerce

我希望能够捕获简码[best_selling_products limit =“ 4”]所做的所有内容,但要包含在WP_Query循环中。这可能吗?

这是我到目前为止所拥有的;

<?php   
    $args = array(
        'post_type' => 'product',
        'meta_key' => 'total_sales',
        'orderby' => 'meta_value_num',
        'posts_per_page' => 4,
    );
    $query = new WP_Query( $args );
?>

<?php if($query->have_posts()): ?>
    <div class="container" id="best_sellers">
        <div class="row">
        <?php while( $query->have_posts() ): $query->the_post(); ?>
            <div class="col-md-3">

            </div>
        <?php endwhile; ?>
        </div>
    </div>
<?php endif; ?> 

我知道我可以获取标题,价格,链接,缩略图等。但是我不知道如何获取的是“添加到购物车”按钮。是否有可能在我的循环中得到这个?还是我必须创建一个?

2 个答案:

答案 0 :(得分:1)

是的。

<?php while( $query->have_posts() ): $query->the_post(); ?>
    <div class="col-md-3">
     <?php 
     do_action( 'woocommerce_shop_loop' );
     wc_get_template_part( 'content', 'product' );
     ?>
     </div>
<?php endwhile; ?>

有关WooCommerce循环内容呈现方式的详细信息,您可以检查wp-content / plugins / woocommerce / templates目录中的woocommerce模板文件。

答案 1 :(得分:1)

首先在while循环中获取产品对象:

$product = wc_get_product(get_the_ID());

然后您可以通过以下方式将其添加到购物车的网址和文本中:

$product->add_to_cart_url()
$product->add_to_cart_text()