gpt4 book ai didi

php - 在 WP_Query 中获取 WooCommerce 订阅产品类型和特定类别

转载 作者:行者123 更新时间:2023-12-04 08:41:36 25 4
gpt4 key购买 nike

我正在为目录中的多个产品使用 WooCommerce 订阅插件,这些产品可作为个人产品或订阅产品使用,并且正在编写自定义模板页面来查询可作为订阅使用的产品。我的查询如下,一切在我看来都是正确的,但由于某种原因它不起作用。任何人都可以看到这里有什么问题吗?
*注意,如果我删除“tax_query”,所有咖啡产品都会按预期返回,但是当我尝试通过 tax_query 进行限制时,不会返回任何产品(是的,我在咖啡类别中有订阅产品)。

$args = array(
'post_type' => 'product',
'posts_per_page' => -1,
'product_cat' => 'coffee',
'tax_query' => array( // builds the taxonomy query
array(
'taxonomy' => 'product_type',
'field' => 'name',
'terms' => 'subscription',
),
),
);
$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();

最佳答案

您还需要为产品类别创建一个“tax_query”,以避免按照您的方式出现此问题,is deprecated since WordPress version 3.1赞成“tax_query”。所以在你的代码中:

$loop = new WP_Query( array(
'post_type' => 'product',
'posts_per_page' => -1,
'post_status' => 'publish',
'tax_query' => array( // builds the taxonomy query
'relation' => 'AND',
array(
'taxonomy' => 'product_cat',
'field' => 'slug',
'terms' => 'coffee',
),
array(
'taxonomy' => 'product_type',
'field' => 'name',
'terms' => 'subscription',
)
)
) );

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();
它应该工作。

关于php - 在 WP_Query 中获取 WooCommerce 订阅产品类型和特定类别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64543841/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com