在 Woocommerce 中检查产品的产品类别
Check a product category for a product in Woocommerce
我想在创建(或更新)后立即检查 WooCommerce 产品的类别 post,然后 运行 基于该类别的更多代码。
为了在 creation/update 上检查 post,我使用了 save_post
和类别 has_category
。 has_category
出了点问题,return 什么也没有。我尝试按照其他问题中的建议将 $post_id
替换为 $post
和 $post->ID
,但这并没有改变任何东西。
function doFruitStuff($post_id){ // Function in functions.php
$fruits = 'fruits';
if(has_category($fruits, $post_id)){
echo "<script type='text/javascript'>alert('has the category');</script>";
}else{
echo "<script type='text/javascript'>alert('doesnt have the category');</script>";
}}
add_action('save_post', 'doFruitStuff');
我使用 has_category
不正确还是 WooCommerce 产品类别的工作方式不同?
我习惯于在 javascript 警报中进行调试,对此感到抱歉。
非常感谢任何帮助。
You can't use has_category()
Wordpress function to check Woocommerce product categories.
注意:产品类别是 Woocommerce 使用的自定义分类法。
因此,您需要以这种方式将 has_term()
用于 Woocommerce 产品类别:
add_action('save_post', 'do_fruit_stuff');
function do_fruit_stuff( $post_id ){
$terms = array('fruits');
if( has_term( $terms, 'product_cat', $post_id ) ){
echo "<script type='text/javascript'>alert('has the product category');</script>";
}else{
echo "<script type='text/javascript'>alert('doesnt have the product category');</script>";
}
}
代码进入您的活动子主题(或活动主题)的 function.php 文件。已测试并有效。
注意:用于 Woocommerce 产品类别的自定义分类法是“product_cat
”。
相关主题:
我想在创建(或更新)后立即检查 WooCommerce 产品的类别 post,然后 运行 基于该类别的更多代码。
为了在 creation/update 上检查 post,我使用了 save_post
和类别 has_category
。 has_category
出了点问题,return 什么也没有。我尝试按照其他问题中的建议将 $post_id
替换为 $post
和 $post->ID
,但这并没有改变任何东西。
function doFruitStuff($post_id){ // Function in functions.php
$fruits = 'fruits';
if(has_category($fruits, $post_id)){
echo "<script type='text/javascript'>alert('has the category');</script>";
}else{
echo "<script type='text/javascript'>alert('doesnt have the category');</script>";
}}
add_action('save_post', 'doFruitStuff');
我使用 has_category
不正确还是 WooCommerce 产品类别的工作方式不同?
我习惯于在 javascript 警报中进行调试,对此感到抱歉。 非常感谢任何帮助。
You can't use
has_category()
Wordpress function to check Woocommerce product categories.
注意:产品类别是 Woocommerce 使用的自定义分类法。
因此,您需要以这种方式将 has_term()
用于 Woocommerce 产品类别:
add_action('save_post', 'do_fruit_stuff');
function do_fruit_stuff( $post_id ){
$terms = array('fruits');
if( has_term( $terms, 'product_cat', $post_id ) ){
echo "<script type='text/javascript'>alert('has the product category');</script>";
}else{
echo "<script type='text/javascript'>alert('doesnt have the product category');</script>";
}
}
代码进入您的活动子主题(或活动主题)的 function.php 文件。已测试并有效。
注意:用于 Woocommerce 产品类别的自定义分类法是“product_cat
”。
相关主题: