我正在尝试获取WooCommerce中产品的产品类别ID.我正在使用WP All import-export插件,可以在其中编写自定义函数.在具有产品ID或名称的自定义函数中,我要查询其类别ID.
在主题的functions.php文件中,我可以添加如下功能,并从产品ID中获取类别ID:
function my_get_category_id_from_product_id($product_id) {
// do something to find the category to which my product belongs to and return it.
return $category_id;
}
我该如何实现?
谢谢
解决方法:
WooCommerce中的产品并不总是只有一个类别.您还可以为商品ID提供多个类别.这是一个函数,它将以字符串形式返回给定产品ID的类别ID,但是如果此给定产品ID的多个类别,它将返回该产品的所有类别ID的逗号分隔字符串.
这是代码:
function get_my_prod_cat_ids($prod_id) {
$terms = get_the_terms( $prod_id, 'product_cat' );
if($terms) {
foreach ($terms as $key => $term) {
$cats_ids_array[$key] = $term->term_id;
//To get only the first category (uncomment below)
//break;
}
// to get an array replace below by: $output = $cats_ids_array;
$output = implode( ",", $cats_ids_array );
echo $output;
}
}
此代码已经过测试并且可以正常工作.
当然,此代码将放在活动子主题(或主题)的function.php文件上或任何插件文件中.