从product_id获取产品类别Woocommerce
问题描述:
我需要检查特定产品是否属于某个类别?从product_id获取产品类别Woocommerce
public function check_add_to_cart_product() {
//Check to see if user has product in cart
$targetcatslug = array('indica', 'sativa', 'hybrid');//target categories slug
$incat=false;
$terms = get_the_terms($product_id,'product_cat');
if ($terms && ! is_wp_error($terms)) :
foreach ($terms as $term) {
$product_cat_slug= $term->slug;
if($product_cat_slug == $targetcatslug) {
$incat = true;
}
}
endif;
return $incat;
}
例如if $product_id = 456
,我想找到它的类别,并检查它们是否属于(“籼稻”,“sative”,“混合”)的类别。如果是,则返回true,否则返回false。我做错了什么?
答
我不知道你从哪里得到$ product_id的值,但是如果产品ID是正确提取的。你只需要在你的if条件使用
in_array($product_cat_slug, $targetcatslug)
。 确保您获得正确提取的产品编号。在您的代码中使用var_dump($product_id);
来验证这一点。 其他所有内容在代码中似乎都是正确的。
让我这个工程。