1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | function gb_skip_offer_if_out_of_stock( $skip, $offer, $order ) { $skip = FALSE; if( !empty( $offer['product_id'] ) ) { $product = explode( ',', $offer['product_id'] ); foreach( $product as $p ) { $p = wc_get_product( $p ); if( ! $p->is_in_stock() ) { $skip = TRUE; break; } } } return $skip; } add_filter( 'wc_1cu_offer_skip_custom_rule', 'gb_skip_offer_if_out_of_stock', 1, 3 ); |