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

Detecting a new added product from front end to set a product category in Woocommerce

我正在为 Woocommerce 使用一个名为 Booster plus 的插件,它使我能够通过前端的表单添加产品, 但我需要将此表格的每个产品作为特定类别提交 所以我必须检测新产品何时添加并更新类别(覆盖插件)

代码如下:

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');
     }
  }

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

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

任何帮助将不胜感激。

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