Avisos
Vaciar todo

Cambios archivo functions.php  

Página 2 / 2
 
Carmen
 Carmen
Usuario activo

Hola, a ver si alguien puede ayudarme. Añadí un código en el archivo functions de mi web para redireccionar la página de compra realizada a una personalizada, y al eliminar de nuevo ese código sigue redireccionando. Compruebo que está editado el archivo, he vaciado la caché, etc y sigue yendo a la página que le dije.

El código que añadí y que luego quité es este 

add_action( 'woocommerce_thankyou', function ($order_id) {
$order = wc_get_order( $order_id );
$url = 'https://www.formacion.carmenenguita.com/gracias-por-realizar-la-compra/';
if ( ! $order->has_status( 'failed' ) ) {
wp_safe_redirect( $url );
exit;
}
});

 

¿Alguien sabe cómo solucionarlo?

 

Gracias

Contenido solo visible a usuarios registrados

Citar
Respondido : 30/03/2022 6:34 pm
Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Carmen.

El plugin lo que hace es redireccionar a una pagina de agradecimiento pero siempre a la misma página. 

Si quieres que cada pasarela dirija a una página de agradecimiento distinta puedes utilizar una función:

add_action( 'woocommerce_thankyou', 'we_redir_based_on_payment_method' );
function we_redir_based_on_payment_method(){

/* do nothing if we are not on the appropriate page */
if( !is_wc_endpoint_url( 'order-received' ) || empty( $_GET['key'] ) ) {
return;
}
$order_id = wc_get_order_id_by_order_key( $_GET['key'] );
$order = wc_get_order( $order_id );

if( 'bacs' == $order->get_payment_method() ) { /* WC 3.0+ */
wp_redirect( 'https://yourwebsite.com/direct-bank-transfer-thank-you-page/' );
exit;
}
if( 'stripe' == $order->get_payment_method() ) { /* WC 3.0+ */
wp_redirect( 'https://yourwebsite.com/paypal-checkout-thank-you-page/' );
exit;
}
}

 

En el código estan añadidas las pasarelas de pago que tienes creadas con su valor " if( 'bacs'  " " if( 'stripe'  "

Tienes que modificar las URL de cada pasarela, es decir creas la pagina de agradecimiento para cada pasarela y en la opción redirect añades la URL de la pagina de agradecimiento que creaste paar cada una:

wp_redirect( 'https://yourwebsite.com/direct-bank-transfer-thank-you-page/' );

 

Nota: realiza primero una copia del archivo functions.php antes de añadir el código para tener el original por si pasara algo.

 

Un saludo

ResponderCitar
Respondido : 31/03/2022 12:22 pm

wpdoctor-revisa-la-salud-de-tu-wordpress

Página 2 / 2