Php 获取WooCommerce中的当前产品类别

Php 获取WooCommerce中的当前产品类别,php,woocommerce,Php,Woocommerce,我想获取我的WooCommerce产品的当前类别,并将其显示在我的产品下面。目前它按字母顺序获取类别。这有点奇怪,当你有一个父类叫做“clearance”和一个子类叫做“shoes”,它甚至在进入shoes类时也会得到clearance 现在内置在主题中的功能发布在下面 function gbx_wc_get_cat_forproduct() { global $smof_data, $product; if (!$smof_data['show_shop_category']) re

我想获取我的WooCommerce产品的当前类别,并将其显示在我的产品下面。目前它按字母顺序获取类别。这有点奇怪,当你有一个父类叫做“clearance”和一个子类叫做“shoes”,它甚至在进入shoes类时也会得到clearance

现在内置在主题中的功能发布在下面

function gbx_wc_get_cat_forproduct() {
global $smof_data, $product;

if (!$smof_data['show_shop_category'])
    return;

$terms = get_the_terms($product->ID, 'product_cat');
if ($terms && !is_wp_error($terms)) {
    foreach ($terms as $term) {
        echo '<a class="product-cat" href="' . get_term_link($term->slug, 'product_cat') . '">' . $term->name . '</a>';
        break;
    }
}
}
函数gbx\u wc\u get\u cat\u for product(){
全球$smof_数据,$product;
if(!$smof_数据['show_shop_category'])
返回;
$terms=get_the_terms($product->ID,'product_cat');
如果($terms&&!is_wp_error($terms)){
foreach($terms作为$term){
回声';
打破
}
}
}
我在谷歌上搜索了如何做到这一点,但我的PHP知识至少是有限的。我也看到了另一个问题,但似乎对我没有帮助


按当前类别,您的意思是这显示在产品类别页面上,对吗?它列出了父类别,但您希望它忽略父类别而支持。。。当前类别页面的名称?否。我添加了一张该问题的示例照片。我意识到这是一个较老的问题,但这是因为您看到的鞋可能在两个类别(鞋和间隙)中,并且您上面的代码仅显示返回的类别列表中的第一个类别,因为“break;”此外,您还可以研究使用$product->get_categories();它返回一系列产品所属的类别。这就是我最后要做的。