从前端检测新添加的产品以在Woocommerce中设置产品类别

问题描述 投票:2回答:1

我使用一个名为Booster plus的插件来支持Woocommerce,这使我能够通过前端的表单添加产品,但我需要将此表单的每个产品作为特定类别提交,因此我必须检测何时添加和更新新产品类别(覆盖插件)

这是代码:

add_action('transition_post_status', 'new_product_add', 10, 3);
 function new_product_add($new_status, $old_status, $post) {
 if( 
        $old_status != 'publish' 
        && $new_status == 'publish' 
        && !empty($post->ID) 
        && in_array( $post->post_type, 
            array( 'product') 
            )
        ) {
            $term = get_term_by('name', 'فروش پیج اینستاگرام', 'product_cat');
            wp_set_object_terms($product_ID, $term->term_id, 'product_cat');
     }
  }

第一部分运行正常,我的意思是检测新产品何时从前端发布

但是更新类别失败了,它会自动将类别设置为我创建的第一个类别

任何帮助将不胜感激。

php wordpress woocommerce product taxonomy-terms
1个回答
0
投票

问题是没有定义的$product_id,应该用$post->ID代替

© www.soinside.com 2019 - 2024. All rights reserved.