我有一个以克为单位的母体产品,其变化量与这些克不同。我希望每种变化都能将母产品的库存减少一定数量的克。
我现在所有这些都在工作,但问题是当母产品中没有足够的克数时,我不能让一个变体出现“缺货”。有人可以把它放在他们的购物车里,然后送到收银台,收银台会把它踢回去,说没有足够的库存来下订单。
我尝试过这样做,但没有成功:
$product_id = $product->get_id();
//get stock multiplier from postmeta
$multiplier = $product->get_meta( '_stock_multiplier' );
//get current stock
$cur_stock = $product->get_stock_quantity();
//if multiplier is higher than current stock, set as outofstock
If ($multiplier > $cur_stock) {
// Updating the stock quantity
update_post_meta( $product_id, '_stock_status', 'outofstock' );
// Updating post term relationship
wp_set_post_terms( $product_id, 'outofstock', 'product_visibility', true );
}
我已将上述代码以各种形式绑定到以下挂钩:
“woocommerce\u product\u set\u stock”
“woocommerce\u variation\u set\u stock”
“woocommerce\u update\u产品”
我可以通过调试输出确认代码正在做它应该做的事情,但是之后缺货状态似乎立即恢复为库存状态。我想知道我是不是把这些东西绑对了钩子。
暂无答案!
目前还没有任何答案,快来回答吧!