WC_Order_Data_Store_CPT::release_held_coupons( WC_Order $order, bool $save = true )
Release all coupons held by this order.
Description Description
Parameters Parameters
- $order
-
(Required) Current order object.
- $save
-
(Optional) Whether to delete keys from DB right away. Could be useful to pass
falseif you are building a bulk request.Default value: true
Source Source
File: includes/data-stores/class-wc-order-data-store-cpt.php
public function release_held_coupons( $order, $save = true ) {
$coupon_held_keys = $this->get_coupon_held_keys( $order );
if ( is_array( $coupon_held_keys ) ) {
foreach ( $coupon_held_keys as $coupon_id => $meta_key ) {
delete_post_meta( $coupon_id, $meta_key );
}
}
$order->delete_meta_data( '_coupon_held_keys' );
$coupon_held_keys_for_users = $this->get_coupon_held_keys_for_users( $order );
if ( is_array( $coupon_held_keys_for_users ) ) {
foreach ( $coupon_held_keys_for_users as $coupon_id => $meta_key ) {
delete_post_meta( $coupon_id, $meta_key );
}
}
$order->delete_meta_data( '_coupon_held_keys_for_users' );
if ( $save ) {
$order->save_meta_data();
}
}