Para redireccionar al usuario a una página especifica después de realizar su compra – por defecto WooCommerce redirecciona a los usuarios a la página Order Received con el slug /order-received/, lo podemos configurar de dos maneras, por código fuente en el archivo funciones o mediante la instalación de un plugin (lo más simple).
A continuación les explicaré las dos formas de hacerlo, haciendo click en cada opción los llevaré directo al contenido.
Redireccionar por Código fuente en archivo funciones
Para comenzar la integración de una redirección personalizada asegúrate de utilizar un código similar al siguiente y recuerda modificar las url con las que correspondan a tu sitio web.
Redireccionar todas las compras a otra página
Este código va a redirigir absolutamente todas las compras de WooCommerce a una página personalizada.
add_action( 'woocommerce_thankyou', function ($order_id) { $order = wc_get_order( $order_id ); $url = 'https://tusitioweb/gracias/'; if ( ! $order->has_status( 'failed' ) ) { wp_safe_redirect( $url ); exit; } });
Solo tendrás que personalizar esta parte de aquí, cambiando la URL por la que quieras:
$url = 'https://tusitioweb/gracias/';
Redireccionar solo una o varias categorias concretas
Puede que necesites redirigir solo una categoría o varias categorías concretas a esa página personalizada y que el resto de productos vayan a la página por defecto. Para eso, usa este código:
add_action( 'woocommerce_thankyou', function ($order_id) {
$order = wc_get_order( $order_id );
$in_order = false;
$url = 'https://tusitioweb/gracias/';
$cats = array('tucategoria');
foreach ($order->get_items() as $product) {
if (has_term($cats, 'product_cat', $product->get_product_id())) {
$in_order = true;
} break;
}
if ( ! $order->has_status( 'failed' )) {
if ($in_order) {
wp_safe_redirect($url );
exit;
}
}
});
En este caso tienes que personalizar la URL:
$url = 'https://tusitioweb/gracias/';
Y también las categorías que quieres que se redirigan:
$cats = array('tucategoria');
Se trata de insertar en el array el slug de las categorías que quieres redirigir. Puedes conseguir el slug en Productos > Categorías
Si solo es una categoría, simplemente cambia ‘tucategoria’ por el slug de tu categoría. Si vas a redirigir varias categorías, tienes que separarlas con una coma, tal que así:
$cats = array('tucategoria', 'otracategoria', 'music');
Redireccionar solo productos específicos
Ahora lo mismo pero con los productos:
add_action( 'woocommerce_thankyou', function ($order_id) {
$order = wc_get_order( $order_id );
$in_order = false;
$url = 'https://academia.local/gracias/';
$products = array(23, 24, 25);
foreach ($order->get_items() as $product) {
if (in_array($product->get_product_id(), $products)) {
$in_order = true;
} break;
}
if ( ! $order->has_status( 'failed' )) {
if ($in_order) {
wp_safe_redirect($url );
exit;
}
}
});
En este caso, aparte de la URL, tienes que indicar los IDs de los productos que quieres redirigir, en esta línea de aquí:
$products = array(22, 34, 225);
Hay varias formas de averiguar el ID de un producto. La más sencilla es esta:
- Ir a Productos > Todos los productos
- Poner el cursor sobre el producto que te interesa
- El ID aparecerá justo debajo del título
Recuerda que debes pegar el código en el archivo “functions.php” del tema activo. Al finalizar su compra, el usuario visualizará la página le indicaste visitar. Asegúrate de haberla creado antes de agregar este código.
NextMove Lite – Thank You Page for WooCommerce
Descripción
NextMove es un poderoso complemento para WooCommerce que le permite crear páginas de agradecimiento personalizadas.
Le da acceso a un conjunto de componentes plug & play como:
Cupones dinámicos, videos, HTML, imágenes y bloques de texto, productos recomendados, compartir en redes sociales y más.
Estos potentes componentes generan la lealtad del cliente e impulsan más ventas con el mismo tráfico sin siquiera tener que lidiar con una sola línea de código.
Demostración: diseño de una sola columna y diseño de dos columnas
*También puede crear páginas de agradecimiento utilizando su creador de páginas favorito e incrustar shortcodes de componentes individuales de NextMove.
Echa un vistazo rápido a lo que es posible:
- Cada componente de NextMove, como el resumen del pedido, el total del pedido, etc., tiene su propio código abreviado. Puede copiar y pegar estos códigos cortos en la página de agradecimiento personalizada que está creando.
- Use cualquiera de sus maquetadores de páginas favoritos como Elementor, Thrive, Divi para crear una página de agradecimiento con códigos cortos de Next Move y funcionará perfectamente.}
- Redirigir a los compradores a una página de agradecimiento personalizada.
- El píxel de Facebook para el evento de compra se activará correctamente ya sea que use componentes internos para crear una página de agradecimiento o un creador de páginas externo.