【问题标题】:How to output a list of specific products only in Woocommerce?如何仅在 Woocommerce 中输出特定产品的列表?
【发布时间】:2021-03-26 03:27:06
【问题描述】:

如何从 Woocommerce 插件中输出选定的产品,以使列表看起来与产品类别列表相同?

Woocommerce 有一个内置的短代码 [products] 来输出产品。如果我创建一个页面,我可以做到这一点,但我可以通过编程方式做到这一点吗?

例如URL 是 /prods/?custom_key=test (我知道如何告诉 WP 识别 URL 并使用我的代码)

使用 WP_Query 我设置全局 $wp_query 以返回要输出的产品列表。

global $wp_query
$args = [...];
$wp_query = new WP_Query( $args );

我尝试过使用存档页面

include(get_query_template('archive'));

这几乎可以工作,但它不像在产品类别中那样显示产品。

创建$wp_query 后,如何通过重复使用短代码[products] 将使用的产品循环来输出产品

【问题讨论】:

  • 谁要求以“需要详细信息或澄清 - 此问题应包括更多详细信息并澄清问题”为由关闭,请澄清所问的内容不清楚

标签: php wordpress woocommerce


【解决方案1】:

这是一个简单的产品循环,您可以在任何模板文件中使用它

 <ul class="products">
        <?php
            $args = array(
                'post_type' => 'product',
                'posts_per_page' => 12
                );
            $loop = new WP_Query( $args );
            if ( $loop->have_posts() ) {
                while ( $loop->have_posts() ) : $loop->the_post();
                    wc_get_template_part( 'content', 'product' );
                endwhile;
            } else {
                echo __( 'No products found' );
            }
            wp_reset_postdata();
        ?>
    </ul><!--/.products-->

这使用了 Woocommerce 模板结构,就像简码一样。您可以将参数更改为您需要通过的任何内容

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-06-10
    • 1970-01-01
    • 1970-01-01
    • 2018-09-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多