Отмена заказа при неоплате

Привет.Установил интеркассу и через тестовую отмену платежа у меня отменился сам заказ.Помогите, как можно изменить это.Что хотелось бы:1. После неудачной оплаты переадресовать клиента на выбор способа оплаты.2. Отправлять такие заказы на email, например с комментарием оплата не удалась.Вот что нашел по коду:includes/class-wc-form-handler.php/*** Place a previous order again.** @deprecated 3.5.0 Logic moved to cart session handling.*/public static function order_again() {wc_deprecated_function( ‘WC_Form_Handler:rder_again’, ‘3.5’, ‘This method should not be called manually.’ );}/*** Cancel a pending order.*/public static function cancel_order() {if (isset( $_GET[‘cancel_order’] ) &&isset( $_GET[‘order’] ) &&isset( $_GET[‘order_id’] ) &&( isset( $_GET[‘_wpnonce’] ) && wp_verify_nonce( wp_unslash( $_GET[‘_wpnonce’] ), ‘woocommerce-cancel_order’ ) ) // phpcs:ignore WordPress.Security.ValidatedSanitizedInput.InputNotSanitized) {wc_nocache_headers();$order_key = wp_unslash( $_GET[‘order’] ); // phpcs:ignore WordPress.Security.ValidatedSanitizedInput.InputNotSanitized$order_id = absint( $_GET[‘order_id’] );$order = wc_get_order( $order_id );$user_can_cancel = current_user_can( ‘cancel_order’, $order_id );$order_can_cancel = $order->has_status( apply_filters( ‘woocommerce_valid_order_statuses_for_cancel’, array( ‘pending’, ‘failed’ ), $order ) );$redirect = isset( $_GET[‘redirect’] ) ? wp_unslash( $_GET[‘redirect’] ) : ”; // phpcs:ignore WordPress.Security.ValidatedSanitizedInput.InputNotSanitizedif ( $user_can_cancel && $order_can_cancel && $order->get_id() === $order_id && hash_equals( $order->get_order_key(), $order_key ) ) {// Cancel the order + restore stock.WC()->session->set( ‘order_awaiting_payment’, false );$order->update_status( ‘cancelled’, __( ‘Order cancelled by customer.’, ‘woocommerce’ ) );wc_add_notice( apply_filters( ‘woocommerce_order_cancelled_notice’, __( ‘Your order was cancelled.’, ‘woocommerce’ ) ), apply_filters( ‘woocommerce_order_cancelled_notice_type’, ‘notice’ ) );do_action( ‘woocommerce_cancelled_order’, $order->get_id() );} elseif ( $user_can_cancel && ! $order_can_cancel ) {wc_add_notice( __( ‘Your order can no longer be cancelled. Please contact us if you need assistance.’, ‘woocommerce’ ), ‘error’ );} else {wc_add_notice( __( ‘Invalid order.’, ‘woocommerce’ ), ‘error’ );}if ( $redirect ) {wp_safe_redirect( $redirect );exit;}}} 

Anonymous
Отправить
Ответ на: