fix: PHP errors and clean up error_log statements

- Fixed redirect_wc_pages_to_spa: added spa_mode check (only redirect when 'full')
- Fixed PHP fatal error: use get_queried_object() instead of global $product
- Removed all error_log debug statements from codebase
- Fixed broken syntax in PaymentGatewaysProvider.php after error_log removal
This commit is contained in:
Dwindi Ramadhana
2026-01-04 10:49:47 +07:00
parent 75a82cf16c
commit 670bd7d351
12 changed files with 11 additions and 73 deletions

View File

@@ -770,16 +770,13 @@ class OrdersController {
if ( null !== $status && $status !== '' ) {
$order_id = $order->get_id();
add_action( 'shutdown', function() use ( $order_id, $status ) {
error_log('[WooNooW] Shutdown hook firing - scheduling email for order #' . $order_id);
self::schedule_order_email( $order_id, $status );
error_log('[WooNooW] Email scheduled successfully for order #' . $order_id);
}, 999 );
}
return new \WP_REST_Response( [ 'ok' => true, 'id' => $order->get_id() ], 200 );
} catch ( \Throwable $e ) {
// Log the actual error for debugging
error_log('[WooNooW] Order update failed: ' . $e->getMessage());
// Return user-friendly error message
return new \WP_REST_Response( [
@@ -797,13 +794,11 @@ class OrdersController {
public static function on_order_status_changed( $order_id, $status_from, $status_to, $order ) {
// Skip if we're in an API request (we schedule manually there)
if ( defined( 'REST_REQUEST' ) && REST_REQUEST ) {
error_log('[WooNooW] Skipping auto-schedule during API request for order #' . $order_id);
return;
}
// Schedule email notification with 15s delay
self::schedule_order_email( $order_id, $status_to );
error_log('[WooNooW] Order #' . $order_id . ' status changed: ' . $status_from . ' → ' . $status_to . ', email scheduled');
}
/**
@@ -1042,7 +1037,6 @@ class OrdersController {
$order->apply_coupon( $coupon );
}
} catch ( \Throwable $e ) {
error_log( '[WooNooW] Coupon error: ' . $e->getMessage() );
}
}
@@ -1234,7 +1228,6 @@ class OrdersController {
} catch ( \Throwable $e ) {
// Log the actual error for debugging
error_log('[WooNooW] Order creation failed: ' . $e->getMessage());
// Return user-friendly error message
return new \WP_REST_Response( [
@@ -2025,7 +2018,6 @@ class OrdersController {
// Check if gateway exists
if ( ! isset( $gateways[ $gateway_id ] ) ) {
error_log( '[WooNooW] Payment gateway not found: ' . $gateway_id );
return new \WP_Error( 'gateway_not_found', sprintf( __( 'Payment gateway not found: %s', 'woonoow' ), $gateway_id ) );
}
@@ -2033,7 +2025,6 @@ class OrdersController {
// Check if gateway has process_payment method
if ( ! method_exists( $gateway, 'process_payment' ) ) {
error_log( '[WooNooW] Gateway does not have process_payment method: ' . $gateway_id );
return new \WP_Error( 'no_process_method', sprintf( __( 'Gateway does not support payment processing: %s', 'woonoow' ), $gateway_id ) );
}
@@ -2045,7 +2036,6 @@ class OrdersController {
// Set flag for gateways to detect admin context
add_filter( 'woonoow/is_admin_order', '__return_true' );
error_log( '[WooNooW] Processing payment for order #' . $order->get_id() . ' with gateway: ' . $gateway_id );
// Call gateway's process_payment method
$result = $gateway->process_payment( $order->get_id() );
@@ -2061,11 +2051,9 @@ class OrdersController {
if ( isset( $result['result'] ) && $result['result'] === 'success' ) {
$order->add_order_note( __( 'Payment gateway processing completed via WooNooW', 'woonoow' ) );
error_log( '[WooNooW] Payment processing succeeded for order #' . $order->get_id() );
} elseif ( isset( $result['result'] ) && $result['result'] === 'failure' ) {
$message = isset( $result['message'] ) ? $result['message'] : __( 'Payment processing failed', 'woonoow' );
$order->add_order_note( sprintf( __( 'Payment gateway error: %s', 'woonoow' ), $message ) );
error_log( '[WooNooW] Payment processing failed for order #' . $order->get_id() . ': ' . $message );
}
$order->save();
@@ -2074,7 +2062,6 @@ class OrdersController {
return $result;
} catch ( \Throwable $e ) {
error_log( '[WooNooW] Payment processing exception for order #' . $order->get_id() . ': ' . $e->getMessage() );
$order->add_order_note( sprintf( __( 'Payment gateway exception: %s', 'woonoow' ), $e->getMessage() ) );
$order->save();