
Agregar un prefijo y/o sufijo al número de pedido en WooCommerce
En WooCommerce, los números de pedido se generan de forma incremental, lo que puede hacerlos predecibles. Para mejorar la personalización y la seguridad, podemos agregar un prefijo y/o un sufijo a los números de pedido.
En este artículo, veremos cómo lograrlo mediante filtros de WooCommerce sin afectar la lógica interna del sistema.
Agregando un prefijo y/o sufijo al número de pedido
WooCommerce permite modificar el número de pedido mostrado al usuario utilizando el filtro woocommerce_order_number
.
Agrega el siguiente código en el archivo functions.php,
de tu tema activo o en un plugin personalizado:
<?php function custom_order_number( $order_id ) { $prefix = 'ORD-'; // Puedes cambiar el prefijo $suffix = '-2024'; // Puedes cambiar el sufijo return $prefix . $order_id . $suffix; } add_filter( 'woocommerce_order_number', 'custom_order_number' );
woocommerce_order_number
: Este filtro permite modificar el número de pedido antes de mostrarlo.custom_order_number
: Función que recibe elorder_id
y le añade un prefijo y un sufijo.
Importante: No afecta la base de datos
Este método solo modifica la visualización del número de pedido. Internamente, WooCommerce seguirá utilizando e order_id
real en la base de datos, por lo que no habrá problemas de compatibilidad con plugins de pago o gestión de pedidos.
Personalización adicional
Si quieres que el prefijo o sufijo cambie dinámicamente según la fecha o el usuario, puedes modificar la función así:
<?php function dynamic_order_number( $order_id ) { $prefix = 'ORD-' . date('Y'); // Año dinámico como prefijo $suffix = '-' . get_current_user_id(); // ID del usuario como sufijo return $prefix . $order_id . $suffix; } add_filter( 'woocommerce_order_number', 'dynamic_order_number' );
Agregar un prefijo o sufijo al número de pedido en WooCommerce es una forma sencilla de personalizar la experiencia del cliente sin afectar la funcionalidad del sistema.
¿Tienes dudas o necesitas ayuda con WooCommerce? ¡Déjalas en los comentarios!