wc_get_product_variations: listar variaciones
Lista una página de variaciones legibles que pertenecen a un producto variable.
Argumentos
| Argumento | Obligatorio | Significado |
|---|---|---|
product_id |
Sí | El producto padre |
page |
No | Número de página, empezando en 1 |
per_page |
No | Tamaño de página, 20 por defecto y 100 como máximo |
Permisos
mcp:read y woocommerce:catalog:read, más manage_woocommerce o edit_products.
Qué devuelve
items, donde cada variación lleva id, parent_id, sku, price, regular_price, sale_price y attributes.
Los resultados se ordenan por ID ascendente. Lee páginas sucesivas para cubrir el producto; solo se incluyen las variaciones legibles.
Un resultado vacío es ambiguo
La herramienta devuelve una lista vacía, sin error, cuando:
- el producto no tiene variaciones;
- el producto no es variable en absoluto; Un ID de padre no disponible o ilegible devuelve un error.
Para los casos de lista vacía, lee primero el producto con wc_get_product y comprueba su type antes de sacar conclusiones a partir de una respuesta vacía.
Esa es la trampa principal aquí: un asistente al que se le dice «este producto no tiene variaciones» puede simplemente haber recibido el ID de un producto simple.
Este listado es tu registro de recuperación
Las variaciones no tienen historial de revisiones para el precio o el stock. Antes de cualquier trabajo con variaciones — y especialmente antes de un lote — este listado es la única instantánea del estado anterior.
Lista las variaciones del producto 219 con todos los campos y detente.
Consérvalo. Es desde lo que restaurarías.
attributes explica qué variación es cuál
El mapa attributes de cada variación identifica su combinación — talla, color, etc. Así es como distingues la variación 2204 de la 2205 en una lista donde los precios y los SKU pueden ser similares.
También es como compruebas que el conjunto está completo: un producto variable con tres tallas y cuatro colores debería tener doce variaciones, y una combinación que falte es una combinación que los clientes no pueden comprar.
Lectura antes de una regla de precio
El listado expone los tres campos de precio por variación, por lo que responde a las preguntas que necesita un cambio de precio en bloque:
- ¿Qué variaciones están actualmente rebajadas?
- ¿Comparten un precio normal, o varían?
- ¿A alguna le falta un precio por completo?
Una variación sin precio no se puede comprar, y es fácil pasarla por alto en el admin. Este listado la hace evidente.
Cómo usarlo bien
Lista las variaciones del producto 219 con sus IDs, atributos, precios y SKU.
¿Qué variaciones del producto 219 tienen actualmente un precio rebajado?
¿Cubren las variaciones del producto 219 todas las combinaciones de talla y color?
Qué no devuelve
- Sin cantidad de stock. El listado la omite;
wc_get_variationla incluye. - Sin descripción. También solo en la lectura completa.
- Sin indicación de que se pueda comprar. Una variación a la que le falta un precio aparece en el listado como cualquier otra.
Ese primer punto importa para el trabajo con stock: necesitas la lectura individual de cada variación, lo que convierte una auditoría de stock de un producto grande en varias llamadas.
Problemas habituales
| Síntoma | Causa |
|---|---|
| Una lista vacía | No hay variaciones legibles en esta página, o no es un producto variable |
pom_ai_mcp_wc_forbidden |
Falta la capacidad de tienda |
| Menos variaciones de las esperadas | Algunas combinaciones nunca se crearon |
| Sin stock en la respuesta | Usa wc_get_variation por variación |
| Precios que parecen incoherentes | Algunas variaciones están rebajadas |