Cómo cambiar el orden por defecto de los productos en WooCommerce

Como ya vimos, el orden por defecto del catálogo de productos en una tienda online creada con WooCommerce es de orden alfabético + orden personalizado.

Este desplegable de WooCommerce para mostrar los productos en distinto orden tiene, por defecto, las siguientes opciones:

  • Por defecto
  • Por popularidad
  • Por calificación media
  • Por los últimos
  • Ordenar por precio: alto a bajo
  • Ordenar por precio: bajo a alto

Cómo cambiar el orden por defecto de los productos de WooCommerce

Hay varias maneras de cambiar el orden por defecto de los productos, y vamos a verlos todos, incluso alguno que te sorprenderá.

Cómo cambiar el orden de los productos en la administración de WooCommerce

Lo primero que vamos a ver es cómo ordenar productos, no para los clientes, sino para los gestores de la tienda, en la administración de WooCommerce.

Tenemos básicamente 2 maneras de hacerlo, una que seguro que ya conoces pero no te aporta mucho, y otra que te va a sorprender.

La primera, y obvia, es simplemente hacer clic en una columna de la pantalla de gestión de productos y ordenarlos por nombre, SKU, precio, etc.

El problema de este método de ordenación es que no se guarda el orden, la próxima vez que accedas a esta pantalla volverás a tener los productos ordenados por orden de publicación, de más nuevo a más antiguo.

Pero hay truco, y es simplemente cambiar la fecha de publicación del producto, algo que tiene sentido no andar cambiando en entradas de blog pero que casi nunca importa en productos de una tienda online.

Así que, simplemente, cambia la fecha de publicación de los productos que quieras tener en primer lugar a una fecha reciente de publicación y ya está.

Lo puedes hacer mediante la edición rápida de la pantalla de gestión de productos o abriendo el editor de productos, como prefieras.

Pero aún hay más, y este otro método seguro que ni te habías dado cuenta de que siempre ha estado ahí.

Me refiero a la lista de productos desde la pantalla de «Ordenar».

Resulta que este listado permite que cambies manualmente el orden de tus productos, arrastrando y soltando, y sí, se guardará el orden, de manera que ahí siempre tendrás la lista personalizada de productos, en el orden que necesites para tus cambios de precio o lo que sea.

No te lo explico, te lo muestro en este vídeo

¿Sorprendido?

No te creas, yo lo descubrí por casualidad, por la manía que tengo de probarlo todo, y desde que lo conocí lo uso en todas las tiendas online que gestiono, y siempre lo recomiendo a mis clientes.

Cómo cambiar el orden por defecto de los productos personalizándolo

Ya de cara a los clientes, el método más sencillo para cambiar el orden por defecto de los productos es desde el personalizador de WordPress.

Ve a Apariencia → Personalizar → WooCommerce → Catálogo de productos y cambia el orden al que tú prefieras.

Como ves, sencillo y disponible en cualquier instalación de WordPress con WooCommerce, da igual el tema activo.

Cómo cambiar el orden por defecto de los productos usando un código

Si prefieres usar un código para cambiar el orden por defecto del catálogo de productos en la tienda, y de este modo evitar que cualquier usuario con permisos pueda modificarlo desde el personalizador has llegado al sitio indicado.

Simplemente añade una función como esta al archivo functions.php del tema (hijo) activo o a tu plugin de personalizaciones:

/* Cambiar orden por defecto de productos en tienda */
add_filter('woocommerce_default_catalog_orderby', 'ayudawp_orden_productos');
function ayudawp_orden_productos( $sort_by ) {
return 'price-desc'; //cambiamos orden por defecto a primero más caros
}

Lo único que tienes que cambiar en el código es valor de return, pudiendo elegir entre:

  • menu_order (por defecto) – por número de orden personalizado más el nombre del producto alfabéticamente.
  • popularity – Por la cantidad de ventas.
  • rating – Por el promedio de valoraciones.
  • date – Primero se mostrarán los productos recién publicados.
  • price – Primero se mostrarán los productos más baratos.
  • price-desc – Primero se mostrarán los productos más caros.
  • rand – Orden aleatorio en cara visualización del catálogo.

Cómo cambiar el orden por defecto de los productos de una categoría concreta usando un código

Una variación del código anterior sería cambiar el orden por defecto solo en cierta(s) categoría(s).

Solo hay que añadir una condición con  is_product_category( 'slug-categoria' ).

Sería así:

/* Cambiar orden por defecto productos 
add_filter('woocommerce_default_catalog_orderby', 'ayudawp_orden_categorias');
function ayudawp_orden_categorias( $sort_by ) {
if( !is_product_category('zapatos') ) { 
return $sort_by; //sin cambios para el resto de categorías
}
return 'rating'; //esta categoría la ordenamos por valoraciones
}

Como verás, son muchas las posibilidades de personalización de ordenado de los productos.

Además, si no quieres que los clientes puedan cambiar el orden que tú establezcas, siempre puedes ocultar el desplegable, como ya vimos…

https://ayudawp.com/quitar-desplegable-ordenar-woocommerce/

Otro día veremos aún más posibilidades de personalización, que las hay.

VALORA Y COMPARTE ESTE ARTÍCULO PARA MEJORAR LA CALIDAD DEL BLOG…
(3 votos, promedio: 5)

¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!

Sobre el autor

2 comentarios en “Cómo cambiar el orden por defecto de los productos en WooCommerce”

  1. Hola Fernando, ¿como seria la funcion para redireccionar desde una url interna a otra url interna (con urls relativas) y para functions.php o code snippets?
    Para redireccionar cuando salgo de wordpress uso esta función:

    function salir_redirect(){
    wp_redirect( home_url() );
    exit();
    }
    add_action( ‘wp_logout’, ‘salir_redirect’ );

    Ahora necesitaria una de url a url, exactamente quiero redireccionar contraseña perdida o lostpassword de wordpress a otra pagina.
    Nota: Se que redirection lo hace y funciona bien pero quedan las redirecciones ahi registradas y cualquiera puede borrarlas por eso busco la manera de hacerlas y que no se vean en redirection, ademas asi me ahorro un plugin aunque se que este en especial es muy util y necesario.
    Gracias y un saludo.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Información base sobre privacidad:
  • Responsable: Fernando Tellado ([email protected])
  • Fin del tratamiento: Moderación de comentarios para evitar spam
  • Legitimación: Tu consentimiento
  • Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal
  • Derechos: Acceso, rectificación, portabilidad, olvido

 

Ir arriba Ir al contenido