我使用一个名为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');
}
}
第一部分运行正常,我的意思是检测新产品何时从前端发布
但是更新类别失败了,它会自动将类别设置为我创建的第一个类别
任何帮助将不胜感激。
问题是没有定义的$product_id
,应该用$post->ID
代替