仅获取 WooCommerce 产品的一个产品类别术语
Get only one product category term for a WooCommerce product
我对 WooCommerce 的类别有一个谜。
对于不同的产品,我有多个类别。
例如产品 Nike Air Red
我将此产品与两个类别 Brands->Nike 和 Shoes->Red 联系起来
Brands 和 Shoes 是主要类别,Nike 和 Red 是子类别。
在产品页面我有以下代码
$terms = wp_get_post_terms( $post->ID, 'product_cat' );
foreach ($terms as $term) {
echo $term->name;
}
输出为 NikeRed
有没有办法获得一个类别?
耐克还是红色?
我也试过了
get_ancestors(get_queried_object_id(), 'product_cat')
但是这个数组是空的
尝试使用reset()
得到第一项如下:
$term_names = wp_get_post_terms( $post->ID, 'product_cat' array('fields' => 'names') );
echo reset($term_names);
这将显示第一个术语名称。
并且使用end()
将显示最后一个:
$term_names = wp_get_post_terms( $post->ID, 'product_cat' array('fields' => 'names') );
echo end($term_names);
我对 WooCommerce 的类别有一个谜。 对于不同的产品,我有多个类别。 例如产品 Nike Air Red 我将此产品与两个类别 Brands->Nike 和 Shoes->Red 联系起来 Brands 和 Shoes 是主要类别,Nike 和 Red 是子类别。
在产品页面我有以下代码
$terms = wp_get_post_terms( $post->ID, 'product_cat' );
foreach ($terms as $term) {
echo $term->name;
}
输出为 NikeRed
有没有办法获得一个类别? 耐克还是红色?
我也试过了
get_ancestors(get_queried_object_id(), 'product_cat')
但是这个数组是空的
尝试使用reset()
得到第一项如下:
$term_names = wp_get_post_terms( $post->ID, 'product_cat' array('fields' => 'names') );
echo reset($term_names);
这将显示第一个术语名称。
并且使用end()
将显示最后一个:
$term_names = wp_get_post_terms( $post->ID, 'product_cat' array('fields' => 'names') );
echo end($term_names);