Hola buenos días, Karen Ríos nos facilitó un código para poner en el functions y hacer que saliese un subtotal del precio de todos los productos menos el código descuento, tanto en la cart como en el checkout.
Es este código:
// Hook para mostrar el subtotal con descuento en el carrito y en la página de finalización de la compra
add_action( 'woocommerce_cart_totals_before_shipping', 'web_foro_display_subtotal_after_coupon' );
add_action( 'woocommerce_review_order_before_shipping', 'web_foro_display_subtotal_after_coupon' );
function web_foro_display_subtotal_after_coupon() {
global $woocommerce;
/* Verificar si se ha aplicado algún cupón */
if ( ! empty( $woocommerce->cart->applied_coupons ) ) {
// Obtener el subtotal de los productos antes de aplicar el cupón
$products_subtotal_before_coupon = $woocommerce->cart->get_subtotal();
/* Obtener el descuento total aplicado por el cupón */
$coupon_discount = $woocommerce->cart->get_cart_discount_total();
/* Calcular el subtotal de los productos después de aplicar el cupón */
$products_subtotal_after_coupon = $products_subtotal_before_coupon - $coupon_discount;
/* Mostrar el subtotal de los productos después de aplicar el cupón */
?>
<tr class="subtotal-row-coupon">
<th><?php _e( 'Subtotal con descuento (excluyendo impuestos y envío)', 'woocommerce' ); ?></th>
<td><?php echo wc_price( $products_subtotal_after_coupon ); ?></td>
</tr>
<?php
}
}
Mi pregunta ahora es si es posible hacer que salga también en el email de confirmación de pedido para el cliente (adjunto captura)
muchas gracias y un saludo
Contenido solo visible a usuarios registrados
Hola Anatares.
Lo que buscas es algo personalizado y en el foro solo podemos ofrecerte códigos estándar, no podemos ofrecer codigo personalizado.
Puedes probar con lo siguiente pero no te aseguro que pueda funcionar:
add_action( 'woocommerce_email_after_order_table', 'mostrar_subtotal_con_descuento_en_correo', 10, 4 );
function mostrar_subtotal_con_descuento_en_correo( $order, $sent_to_admin, $plain_text, $email ) {
// Obtenemos el subtotal del pedido antes de aplicar descuentos
$subtotal_antes_descuento = $order->get_subtotal();
// Obtenemos el descuento aplicado al pedido
$descuento = $subtotal_antes_descuento - $order->get_total();
// Mostramos el subtotal con el descuento
echo '<h2>' . __('Subtotal con Descuento:', 'woocommerce') . '</h2>';
echo '<p><strong>' . __('Subtotal:', 'woocommerce') . '</strong> ' . wc_price( $subtotal_antes_descuento ) . '</p>';
echo '<p><strong>' . __('Descuento:', 'woocommerce') . '</strong> ' . wc_price( $descuento ) . '</p>';
}
Un Saludo
Hola @pepesoler
pues yo diría que casi lo habías conseguido, pero no me he explicado bien, es decir:
- Con ese código has atacado al mail correcto y has conseguido pintar lo que has puesto del Subtotal y el Descuento.
- la cosa sería sacar solo el valor que Karen calculó en el código de arriba, que solo cogía los productos comprados y les restaba el valor de un código descuento, sin contar impuestos ni nada, y lo ponía justo debajo (en el ejemplo de ahora, $ 400 menos $ 40 del cupón prousadoctor darían $ 360 )
Es decir, igual poniéndolo de otra manera podríamos sacar ya solo un valor (la resta), y ponerlo como pongo en la imagen siguiente:
Hola Anatares,
Similar a tu consulta anterior, y tal como te comentan mis compañeros, los fragmentos de código que compartimos son estándar, pueden tener algunas modificaciones, según sea el caso, pero no podemos ofrecer códigos que sean totalmente a la medida según sea la solicitud
Para ello es que tenemos en total disposición el directorio de nuestros colaboradores, los cuales se encargan de tomar el caso y hacer los ajustes tal como los necesites
https://www.webempresa.com/directorio-colaboradores.html
Lamentamos no poder apoyarte de forma más concreta, quedamos atentos a tus comentarios
Saludos!