因此,在我的taxonomy-product_tag.php模板上,我希望从类别中获取所有产品ID。
以下是我目前的工作方式
<?php
$post_ids = array();
$args = array( 'post_type' => 'product', 'posts_per_page' => 1, 'product_cat' => 'dog-collars', 'orderby' => 'rand' );
$loop = new WP_Query( $args );
if ( $loop->have_posts() ) {
while ( $loop->have_posts() ) : $loop->the_post();
$post_ids[] = get_the_ID();
endwhile;
} else {
echo __( 'No products found' );
}
wp_reset_query();
print_r($post_ids);
?>
我可以遍历product_cat,将id引入数组,然后在页面的下方,我使用foreach和WC产品工厂来操作数据,以便我为用户显示它。
我的问题是我需要根据类别将循环设置为动态,并且我无法理解如何执行此操作。
我确实认为我可以从网址
中获取类别名称<?php $actual_link = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]"; ?>
抓住它并解析得到最后一个,即类别名称,然后打印到循环
但这似乎是一种非常糟糕的做法。
我想要的是args
$args = array( 'post_type' => 'product', 'posts_per_page' => 1, 'product_cat' => 'DYNAMICHERE', 'orderby' => 'rand' );
我希望能够根据我所在的类别动态填充product_cat
任何帮助或建议/指出我正确的方向将不胜感激
答案 0 :(得分:1)
使用get_query_var( 'product_cat' )
。