Los filtros de WooCommerce no funcionan: cuatro síntomas, cuatro causas
Cuando los filtros de WooCommerce no funcionan, lo más habitual es que los productos tengan atributos personalizados, escritos a mano en un producto, en vez de globales. La segunda causa típica son valores repetidos, por ejemplo «Negro» y «negro». A veces la culpa es del plugin de filtros o de su caché. Averigua cuál de los cuatro síntomas ves y la causa suele quedar clara.
Autor: El equipo de TellMyShop. Una guía para dueños de sitios WordPress y tiendas WooCommerce: la causa, el arreglo manual y el mismo trabajo en una conversación con el chat.
Última actualización: · 7 min de lectura
De dónde saca los datos el filtro
Un filtro de la tienda muestra valores de atributos, es decir, características como el color, la talla o el material. WooCommerce tiene dos tipos de atributos, y de ellos depende que el filtro vea algo.
| Atributo global | Atributo personalizado (del producto) | |
|---|---|---|
| Dónde se crea | Productos → Atributos | en la ficha de un producto, pestaña Atributos |
| Valores | una lista común para toda la tienda | escritos a mano, solo en ese producto |
| Lo ve el filtro | sí | normalmente no |
| Riesgo de erratas | bajo, eliges de una lista | alto, cada valor desde cero |
| Para variaciones | sí | sí, pero sin filtrado |
La documentación de WooCommerce sobre categorías, etiquetas y atributos explica que los atributos sirven para filtrar productos y crear variaciones. La documentación del bloque de filtro por atributo de la extensión de búsqueda lo dice aún más claro: el bloque de filtro por atributo solo admite atributos globales.
Síntoma 1: el filtro no muestra productos
Un cliente hace clic en «Rojo» y ve una lista vacía, aunque la tienda tiene productos rojos.
Causa: los productos rojos tienen el color como atributo personalizado o en la descripción, no como término de un atributo global. El filtro busca productos asignados al término «Rojo» de la lista global y no encuentra ninguno.
Revisa la pestaña Atributos de uno de esos productos. Un atributo global tiene un nombre de la lista y términos elegidos en un desplegable. Uno personalizado tiene un campo de texto con valores separados por una barra vertical.
Síntoma 2: falta un valor o un atributo entero en el filtro
Tienes cinco colores y el filtro muestra tres. O no hay ningún filtro de talla.
Suele haber tres causas. Algunos productos tienen un atributo personalizado en vez de uno global. El término existe en la lista, pero ningún producto publicado y con stock lo tiene, así que el filtro lo oculta. O el bloque de filtro se configuró solo para un atributo. En los temas de bloques, los bloques de filtro se configuran en Apariencia → Editor, en la plantilla del catálogo, y la documentación del bloque de filtros de productos describe cómo funcionan.
Síntoma 3: los mismos valores salen dos veces
El filtro muestra «Negro», «negro» y «Nergo». O «XL» y «xl». Cada uno lleva a un grupo distinto de productos.
Causa: importaciones desde varios archivos o valores añadidos a mano. Para WooCommerce son términos distintos. La solución es elegir uno, asignarle todos los productos y solo después borrar el que queda vacío. El orden importa, porque borrar un término que todavía tiene productos lo quita de esos productos.
Una importación CSV también facilita crear un atributo personalizado en vez de uno global. La guía de Barn2 sobre importar atributos explica cómo evitarlo.
Síntoma 4: el filtro muestra resultados erróneos o antiguos
El filtro muestra un producto que no debería, una talla agotada o el estado de hace unos días.
Las causas son técnicas:
- la caché de un plugin de caché o del propio plugin de filtros,
- la tabla de búsqueda de atributos de WooCommerce, que puede quedarse atrás después de una importación; en las versiones más nuevas se regenera en WooCommerce → Estado → Herramientas,
- un plugin de filtros que mira los atributos del producto y no el stock de una variación concreta,
- un conflicto entre dos plugins de filtros, o entre un plugin de filtros y uno de búsqueda.
Aquí mandan los ajustes y la documentación del plugin de filtros. El resumen de Themeisle también trata los bloques de filtro integrados y sus límites.
Un atributo para los filtros, para la descripción o para las variaciones
Cada atributo de la ficha de producto tiene dos casillas, y las dos influyen en lo que ve el cliente.
«Visible en la página de productos» muestra el atributo en la pestaña de información adicional. No afecta al filtro, pero ayuda al cliente a comparar productos.
«Usado para variaciones» convierte el atributo en la base de las variaciones, por ejemplo las tallas de una sudadera. Ese atributo puede seguir funcionando en el filtro si es global. Pero entonces el filtro y el stock empiezan a depender uno del otro: un producto con la XL agotada puede aparecer al elegir XL, según el plugin de filtros.
Una buena regla: las características por las que el cliente elige productos, como color, talla, material o marca, mantenlas como atributos globales. Los detalles descriptivos que solo valen para un producto pueden quedarse como personalizados o ir en la descripción. Deja las categorías y etiquetas para grupos de productos, no para colores y tallas.
Cómo ordenar los atributos paso a paso
Un orden que te protege de perder datos:
- Haz una lista de los atributos globales de Productos → Atributos, con sus términos.
- Busca productos con atributos personalizados que deberían ser globales.
- Busca términos repetidos y decide cuál se queda.
- Asigna los productos a los términos globales correctos, empezando por una categoría.
- Comprueba el filtro en esa categoría en una ventana privada del navegador.
- Borra los términos repetidos que hayan quedado vacíos.
- Vacía la caché y comprueba los filtros en las demás categorías.
Con pocos productos puedes hacerlo en el panel. Con unos cientos, son muchas tardes abriendo productos uno a uno.
Cómo ayuda el chat
El plugin TellMyShop para WordPress y WooCommerce lee la lista de atributos y sus términos, y los datos de los productos, ya en la versión gratuita TellMyShop Free. Tu chat (Claude o ChatGPT) encuentra productos sin atributos, con atributos personalizados en vez de globales y con términos repetidos, y prepara un plan para ordenarlos.
En TellMyShop Pro el chat asigna atributos a los productos en cuanto activas la licencia, sin interruptores, en lotes de hasta 50 productos. Cada lote tiene una vista previa, se guarda después de tu aprobación y en el historial de cambios puedes deshacer cualquier cambio. Una conversación de muestra, con valores de ejemplo:
Tú: El filtro de color de la categoría Chaquetas muestra solo una parte de los productos. Averigua por qué.
Tu chat: La categoría Chaquetas tiene 64 productos. 41 tienen el atributo global Color. 18 tienen el color como atributo personalizado, así que el filtro no los ve. 5 no tienen ningún color. Además, el atributo Color tiene dos términos, «Negro» y «negro».
Tú: Pasa esos 18 al atributo global y junta los negros.
Tu chat: Vista previa de los 2 primeros de 18:
En 7 productos con el término «negro» lo cambiaré a «Negro». Cinco productos no tienen color: dime los colores o los salto. Lo guardaré después de tu «sí».
Chaqueta de plumas Tatra
versión anterior: Color (personalizado): negro
versión nueva: Color (global): Negro
Chaqueta softshell Gorce
versión anterior: Color (personalizado): azul marino
versión nueva: Color (global): Azul marino
El chat no adivina un color o una talla a partir del nombre si no está seguro. Reúne los datos que faltan en una sola pregunta. Tampoco arregla el plugin de filtros ni sus ajustes. Si después de ordenar los atributos el filtro sigue mostrando resultados erróneos, el problema está en el propio plugin, y hay que comunicárselo a su autor o a quien cuida la web.
Unos buenos filtros son la mitad del trabajo en una categoría. El artículo sobre la descripción de categoría en WooCommerce trata la otra mitad. Si los clientes usan el buscador en vez de los filtros, mira qué hacer cuando el buscador de WooCommerce no encuentra productos. Hay más sobre el plugin en la página TellMyShop para WordPress y WooCommerce, los precios están en la página de precios y todas las guías están en el blog.
Preguntas y respuestas
¿Qué diferencia hay entre un atributo global y uno personalizado en WooCommerce?
Un atributo global lo creas una vez en Productos → Atributos y eliges sus términos en muchos productos. Un atributo personalizado lo escribes a mano en un producto y solo existe ahí. Los filtros de la tienda funcionan con atributos globales y normalmente no ven los personalizados.
¿Por qué mi filtro muestra «Negro» y «negro» como dos valores?
Porque son dos términos de atributo distintos, normalmente después de importar dos archivos o de añadir valores a mano. El filtro muestra cada uno por separado y el cliente ve solo una parte de los productos. Asigna los productos a un término y borra el otro cuando quede vacío.
El filtro muestra una talla agotada. ¿Es un fallo?
Depende de los ajustes y del plugin de filtros. Algunos filtros miran los atributos del producto y no el stock de una variación concreta, así que muestran el producto aunque la talla elegida esté agotada. Revisa los ajustes del plugin de filtros y el stock de las variaciones.
¿TellMyShop me arregla el plugin de filtros?
No en esta tarea. El chat revisa y corrige los datos con los que trabajan los filtros: los atributos de los productos, sus términos y los huecos. Los ajustes del propio plugin de filtros, su aspecto y los errores de código son cosa del autor del plugin o de quien cuida la web.
¿Cuántos productos corrige el chat de una vez?
En TellMyShop Pro los atributos se asignan en lotes de hasta 50 productos. Antes de un trabajo grande, el chat comprueba si cabe en los límites por hora fijados en el panel del plugin y, si no cabe, propone hacerlo por etapas.
WordPress es una marca de la WordPress Foundation. WooCommerce es una marca de Automattic Inc. Claude es una marca de Anthropic PBC. ChatGPT y OpenAI son marcas de OpenAI. TellMyShop no está afiliado a estas empresas.