【问题标题】:WooCommerce - get product sub categoriesWooCommerce - 获取产品子类别
【发布时间】:2018-07-16 23:35:30
【问题描述】:

在 WooCommerce 中,我试图只获取我创建的特定类别的子类别,称为 collections 并将它们显示在 WP_Query 中,但我似乎无法只获取它标记为显示的类别。我可以成功返回所有类别,而不是它设置为显示的特定类别。

我的尝试

我尝试将get_termsproduct_cat 分类结合使用,但无济于事,get_categories 也是如此。我返回了所有类别,而不仅仅是产品被标记为显示的类别。我已经尝试了几乎所有其他获取类别的方法,但仍然无济于事。

WP_Query

   <ul class="product-slider">
    <?php

    $args = array(
        'post_type'             => 'product',
        'post_status'           => 'publish',
        'product_cat'              => 'sustainable',
        'ignore_sticky_posts'   => 1,
        'posts_per_page'        => '12'
    );

    $sustain = new WP_Query($args);

    if ($sustain->have_posts()) : while ($sustain->have_posts()) : $sustain->the_post();

        $image = wp_get_attachment_image_src( get_post_thumbnail_id( $loop->post->ID ), 'product-slider-img' );

        ?>

        <div class="single-product">
            <div class="test">
                <div class="product__image">
                    <img src="<?php echo $image[0]; ?>">
                </div>
                <div class="product__meta">
                    <div class="product__name">
                        <?php

                        echo wc_get_product_category_list($product->get_id()) ?>


                        ?>
                    </div>
                    <div class="product__subtitle">
                        <?php echo $product->name; ?>
                    </div>
                    <div class="product__price">
                        £<?php echo $product->price; ?>
                    </div>
                </div>
                <a class="product__link" href="<?php the_permalink(); ?>"></a>
            </div>
        </div>

    <?php

    endwhile; endif;

    wp_reset_query();

    ?>
</ul>

【问题讨论】:

    标签: php wordpress woocommerce


    【解决方案1】:

    product_cat 是自定义分类法,您不能将普通的category 参数替换为自定义分类法的名称。看一下Codex,你会发现有一个完整的tax_query 参数用于此用途。

    在您的示例中,您应该将 'product_cat' =&gt; 'sustainable', 替换为以下内容:

    'tax_query' => array(
            array(
                'taxonomy' => 'product_cat',
            ),
        ),
    

    注意:这是理论,我无法提供经过测试的示例,因为我现在不在办公桌前。

    【讨论】:

      猜你喜欢
      • 2014-06-27
      • 1970-01-01
      • 2016-01-09
      • 2014-01-27
      • 2021-08-05
      • 1970-01-01
      • 1970-01-01
      • 2021-11-07
      • 2013-02-24
      相关资源
      最近更新 更多