Tengo un complemento de puerta de enlace y agregué el código a continuación para redirect al cliente a una página personalizada cuando falla el pago.
Mi pregunta es, ¿necesito agregar exit(); después del final de redirect_url que está dentro de la declaración if?
He visto algunos códigos with exit y some without .
else { //failed $this->msg['class'] = 'error'; $this->msg['message'] = __( "Your Transaction Has Failed Due to Some Technical Error. Please Try Again.<br/><br/>", 'toBeTranslatd'); $order->update_status('failed'); $order->add_order_note('Failed'); $order->add_order_note($this->msg['message']); $redirect_url = home_url( '/payment-faild/' ); $lang_code = get_post_meta( $order_id, 'wpml_language', true ); if ( $lang_code === ar ) { $redirect_url = apply_filters( 'wpml_permalink', $redirect_url, $lang_code ); //exit(); // Do I need this or delete it? } }Wordpress proporciona dos funciones para esto:
y
Y esto es lo que recomienda wordpress:
Nota:
wp_redirect()ywp_safe_redirect()no se cierran automáticamente y casi siempre deben ir seguidos de una llamada para salir;
wp_redirect() o wp_safe_redirect() no salen ni mueren automáticamente, y casi siempre deben ir seguidos de una llamada para salir o morir();
Referencia:https://developer.wordpress.org/reference/functions/wp_redirect
Gracias.