Ticker

6/recent/ticker-posts

Ad Code

Responsive Advertisement

Cómo añadir un nuevo estado de pedido personalizado a WooCommerce

Si quieres una tienda online rápida y prácticamente gratis nada mejor que WooCommerce, el plugin gratuito para WordPress que hace montar un comercio electrónico en unos pocos clics, pero tiene algunas pequeñas carencias de base.

Eso sí, luego viene al rescate el sistema de plugins de WordPress, que cubren los espacios que no cubre una instalación por defecto de WordPress o, en este caso WooCommerce.

Los estados de pedido de WooCommerce por defecto

Una de estas carencias se refiere a los estados de pedido disponibles que, por defecto, son los siguientes:

  • Pendiente de pago
  • Fallido
  • Procesando
  • Completado
  • En espera
  • Cancelado
  • Reembolsado
  • Identificación necesaria

Además de estos estados de pedido por defecto de WooCommerce, hay otros que pueden ir apareciendo a medida que instalas plugins.

Por ejemplo, si instalas un plugin de facturación puede aparecer un nuevo estado de «Enviada factura en PDF», o si es un plugin de seguimiento de envíos, algunos plugins añaden estados de pedido como «Pendiente de envío», «Enviado», «Entregado», etc.

Pero ¿qué pasa si yo quiero añadir un estado de pedido diferente, por cuestiones de seguimiento propias de mi tienda online?

Podrías buscar un plugin que añada justo ese estado de pedido, y te ayude en «ese» seguimiento, pero no siempre lo vas a encontrar, así que hay que ponerle solución, creando un nuevo estado de pedido personalizado, que no dependa de plugins.

Cómo añadir un nuevo estado de pedido personalizado a WooCommerce con código

La primera opción que tenemos es solucionarlo con un poco de código a medida, que cree el nuevo estado de pedido y nos permita disponer de esta nueva «etiqueta» de seguimiento y filtrado de pedidos.

El código sería como el de este ejemplo:

/* Nuevo estado de pedido */
add_action( 'init', 'ayudawp_nuevo_estado_pedido_enviado' );
function ayudawp_nuevo_estado_pedido_enviado() {
register_post_status( 'wc-enviado', array(
'label' => _x( 'Enviado', 'Order status', 'woocommerce' ),
'public' => true,
'exclude_from_search' => false,
'show_in_admin_all_list' => true,
'show_in_admin_status_list' => true,
'label_count' => _n_noop( 'Enviado <span class="count">(%s)</span> ', 'Enviados <span class="count">(%s)</span>', 'woocommerce' )
) );
}

// Registro en wc_order_statuses.
add_filter( 'wc_order_statuses', 'ayudawp_pedido_enviado' );
function ayudawp_pedido_enviado( $order_statuses ) {
$order_statuses['wc-enviado'] = _x( 'Enviado', 'Order status', 'woocommerce' );
return $order_statuses;
}

// Añadir estado a acciones en lote en el orden que queramos
function rename_or_reorder_bulk_actions( $actions ) {
$actions = array(
'trash' => $actions['trash'], //Enviar a papelera
'mark_processing' => $actions['mark_processing'], //Marcar como procesando
'mark_on-hold' => $actions['mark_on-hold'], //Marcar como en espera
'mark_cancelled' => $actions['mark_cancelled'], //Marcar como cancelado
'mark_completed' => $actions['mark_completed'], //Marcar como completado
'mark_enviado' => __( 'Cambiar estado a enviado', 'textdomain' ), // El nuevo estado
);
return $actions;
}
add_filter( 'bulk_actions-edit-shop_order', 'rename_or_reorder_bulk_actions', 20 );

Este código consta de 3 partes:

  1. Creación del nuevo estado de pedido para que esté disponible al editar un pedido
  2. Registro del nuevo estado de pedido en la tabla de estados de pedido
  3. Añadir una acción en lote para poder cambiar también al nuevo estado de pedido desde el listado de pedidos

De este código debes cambiar los textos que identifican el nuevo nombre del estado de pedido (Enviado), así como el array del estado (wc-enviado), si quieres.

¿Dónde tengo que añadir este código?

Si nunca has añadido un código personalizado a tu instalación de WordPress aquí tienes una guía sencilla y rápida con varios métodos para hacerlo:

Cómo y dónde pegar en WordPress códigos PHP, JS, CSS y funciones que encuentres por ahí

Cómo añadir un nuevo estado de pedido personalizado a WooCommerce con plugins

Si no te animas con un sencillo código como el anterior siempre puedes recurrir a plugins que te faciliten la tarea, y aquí tienes los mejores, que pueden ayudarte con esta personalización…

Custom Order Status for WooCommerce (gratis)

Este plugin gratuito permite crear, modificar y borrar fácilmente nuevos estados de pedido personalizados, para los que puedes editar:

  • El slug del estado de pedido personalizado.
  • La etiqueta (nombre visible) del estado de pedido personalizado.
  • El icono del estado de pedido personalizado.
  • El icono y color de la columna del estado de pedido personalizado

Para ello dispone de una sencilla interfaz, en la que crear los nuevos estados de pedido personalizados.

Al ser una versión gratuita no permite personalizar los emails ni los estados de pedido por defecto pero en lo que se refiere a nuevos estados de pedido personalizados puedes crearlos y modificarlos a tu gusto muy fácilmente.

WooCommerce Order Status Manager ($49)

De los creadores de WooCommerce también tenemos este plugin, de pago pero barato, que nos permite crear estados de pedido personalizados de manera muy sencilla.

Para empezar, solo con activar el plugin ya tienes mejoras, pues sin que tengas que configurar nada por sí solo añade colores e iconos a los estados de pedido por defecto, lo que facilita identificarlos a golpe de vista.

Pero no solo eso, sino que puedes personalizar totalmente los colores y más aspectos de los estados de pedido por defecto, así como ajustes de los correos electrónicos de cada estado de pedido.

En cuanto a la creación y personalización de nuevos estados de pedido, pues lógicamente puedes hacer lo mismo que con los estados de pedido existentes, pero desde cero, claro.

Y, como con los estados existentes, también puedes configurar si se mandará un email al pasar a este estado de pedido o no y a quienes.

Como puedes comprobar, y como no podía ser de otra manera, es un plugin muy completo, que cubre todas las necesidades que puedas tener a la hora de personalizar estados de pedido, tanto existentes como nuevos.


Y con esto ya estaría. Verás que crear estados de pedido personalizados para WooCommerce al final es muy sencillo, y tienes opciones gratuitas y de pago para conseguirlo.

La entrada Cómo añadir un nuevo estado de pedido personalizado a WooCommerce la publicó primero Fernando Tellado en Ayuda WordPress. No copies contenido, no dice nada bueno de ti a tus lectores.

Enregistrer un commentaire

0 Commentaires