WC_Abstract_Order::hold_coupon
Hold coupon if a global usage limit is defined.
Метод класса: WC_Abstract_Order{}
Хуков нет.
Возвращает
Строку. Meta key which indicates held coupon.
Использование
// private - только в коде основоного (родительского) класса $result = $this->hold_coupon( $coupon );
- $coupon(WC_Coupon) (обязательный)
- Coupon object.
Код WC_Abstract_Order::hold_coupon() WC Abstract Order::hold coupon WC 10.6.2
private function hold_coupon( $coupon ) {
$result = $coupon->get_data_store()->check_and_hold_coupon( $coupon );
if ( false === $result ) {
// translators: Actual coupon code.
throw new Exception( sprintf( __( 'An unexpected error happened while applying the Coupon %s.', 'woocommerce' ), esc_html( $coupon->get_code() ) ) );
} elseif ( 0 === $result ) {
// translators: Actual coupon code.
throw new Exception( sprintf( __( 'Coupon %s was used in another transaction during this checkout, and coupon usage limit is reached. Please remove the coupon and try again.', 'woocommerce' ), esc_html( $coupon->get_code() ) ) );
}
return $result;
}