Curiosamente, cuando agrega un producto de suscripción Para el carrito, no hay información de fecha de renovación a menos que se desplace hasta el fondo y pueda leer el texto muy pequeño debajo del «total recurrente» (ver captura de pantalla).

Sería mucho más útil si las fechas (y específicamente la fecha de inicio de la suscripción y la fecha de finalización de WooCommerce) se mostraron bien bajo el nombre del producto dentro de la tabla del carrito y en la revisión del pedido de la página de pago, para que el cliente sepa exactamente lo que está comprando antes de tener para descubrir eso.

Entonces, así es como se hace. ¡Disfrutar!

Para esta suscripción anual, pude mostrar el intervalo de suscripción debajo del nombre del producto en el carrito. Snippet también lo muestra en la página de pago y agradece / verá las páginas de clientes del pedido.

Php Snippet: Mostrar el período de suscripción @ WooCommerce Cart, Checkout, Página de gracias, Ver pedido

/**  n*@snippet       Subscription Interval @ Cart & Checkout  n*@how-to        https://tdestudiodesign.com/tutoriales  n*@author        Tomás Lucas D´Amario, TD Estudio Design  n*@testedwith    WooCommerce 6  n*@community     https://tdestudiodesign.com/club */// -----------------------------------------// 1. Function to return subscription periodfunction tddesign_subscription_period_order_item_meta( $product, $order_date = '' ) {if ( is_a( $product, 'WC_Product_Subscription' ) || is_a( $product, 'WC_Product_Subscription_Variation' ) ) {if ( ! $order_date ) {$order_date = date( 'M d' );} else $order_date = date( 'M d', $order_date );$period = WC_Subscriptions_Product::get_period( $product );$interval = WC_Subscriptions_Product::get_interval( $product );if ( date( 't', strtotime( $order_date ) ) == date( 'd', strtotime( $order_date ) ) || date( "m", strtotime( $order_date ) ) != date( "m", strtotime( $order_date ." +1 month" ) ) - 1 ) {$end = date( 'M d Y', strtotime( '-1 day', strtotime( 'last day of ' . $interval . ' ' . $period, strtotime( $order_date ) ) ) );} else {$end = date( 'M d Y', strtotime( $interval . ' ' . $period . ' -1 day', strtotime( $order_date ) ) );}return '<p><small>Subscription period: ' . $order_date . ' - ' . $end . '</small></p>';}return '';}// -----------------------------------------// 2. Display interval @ Cart, Checkout, Orderadd_action( 'woocommerce_after_cart_item_name', 'tddesign_echo_subscription_period_cart_item_meta', 9999, 2 );function tddesign_echo_subscription_period_cart_item_meta( $cart_item, $cart_item_key ) {echo tddesign_subscription_period_order_item_meta( $cart_item['data'] );}add_filter( 'woocommerce_checkout_cart_item_quantity', 'tddesign_return_subscription_period_checkout_item_meta', 9999, 3 );function tddesign_return_subscription_period_checkout_item_meta( $html, $cart_item, $cart_item_key ) {return $html . tddesign_subscription_period_order_item_meta( $cart_item['data'] );}add_action( 'woocommerce_order_item_meta_start', 'tddesign_echo_subscription_period_order_item_meta', 9999, 4 );function tddesign_echo_subscription_period_order_item_meta( $item_id, $item, $order, $bool ) {$product = $item->get_product();echo tddesign_subscription_period_order_item_meta( $product, strtotime( $order->get_date_completed() ) );}

¿Dónde agregar código personalizado?

Debes colocar PHP personalizado en funciones.php y CSS personalizado en style.css del tema de su hijo: ¿Dónde colocar la personalización de WooCommerce?

Este código todavía funciona, a menos que informe lo contrario. Para excluir los conflictos, cambie temporalmente al tema de la tienda, deshabilite todos los complementos, excepto WooCommerce, y pruebe el fragmento nuevamente: Solución de problemas de WooCommerce 101

Contenido relacionado

Tomás Lucas D´Amario

Programador y Desarrollador

Experto en WooCommerce y WordPress. Trabajando como un profesional independiente de WooCommerce desde 2016. Su objetivo es ayudar a los empresarios y desarrolladores a superar sus pesadillas de WooCommerce. Sigueme o contactame por Linkedin