wc_empty_coupon_trash: vaciar permanentemente los cupones en la papelera
Elimina de forma permanente los cupones que ya están en la papelera. Está marcada como destructiva, y lo es de verdad: nada sobrevive.
Argumentos
| Argumento | Obligatorio | Significado |
|---|---|---|
dry_run |
No | Muestra lo que se purgaría, sin purgar |
No hay forma de elegir qué cupones: toma todo lo que esté actualmente en la papelera, por lotes.
Permisos
Allow WooCommerce catalog writes abierto, además del acceso al catálogo y el permiso de eliminación para cada cupón seleccionado.
Gestiona 100 por llamada
La herramienta consulta hasta 100 cupones en la papelera y los elimina. Una papelera con 250 cupones necesita tres llamadas.
La respuesta informa de complete y de cuántos se eliminaron. Si falla, se detiene e incluye failed_id; las eliminaciones ya completadas no se revierten. Un resultado de exactamente 100 es una pista clara de que hay más:
Purga la papelera y vuelve a comprobar el número de cupones.
Usa wc_get_coupon_count para conocer el tamaño de antemano y para confirmar después que la papelera está vacía.
La simulación es la útil
La vista previa devuelve la lista real de IDs de cupones que purgaría.
Esa lista merece leerse antes de cada llamada. Es la última oportunidad de darse cuenta de que algo se envió a la papelera por accidente y está a punto de volverse irrecuperable:
Haz una simulación de la purga y muéstrame los IDs; luego lee cada uno para que pueda ver los códigos.
Ten en cuenta que los IDs son todo lo que obtienes: sin códigos, sin importes. Leerlos individualmente es la única forma de ver qué está a punto de destruirse, y después de la purga no queda nada que leer.
Por qué la ejecutarías
El motivo suele ser que un código necesita reutilizarse. Un cupón en la papelera mantiene su código reservado, así que BLACKFRIDAY no puede volver a crearse mientras el del año pasado siga en la papelera.
Purgar libera esos códigos. Ese es el uso previsto, y también el riesgo: un código anual liberado mediante la purga es un código sin registro de lo que hizo la última vez.
Nada aquí es selectivo
No hay ningún argumento para purgar un solo cupón, ni los cupones anteriores a una fecha, ni todo excepto unos pocos. Vacía la papelera.
Si solo hace falta liberar un código, la vía más segura es eliminar permanentemente ese cupón concreto con wc_delete_coupon y force, dejando intacto el resto de la papelera.
Recurre a esta herramienta solo cuando vaciar toda la papelera sea realmente lo que se pretende.
Los pedidos anteriores no se ven afectados
Los pedidos que usaron esos cupones conservan sus descuentos y sus totales. Lo que desaparece es el propio registro del cupón, lo que dificulta responder más adelante a preguntas sobre qué ofrecía un código histórico.
Si ese historial importa para la contabilidad, expórtalo antes de purgar.
Ejecútala primero en staging si la papelera es grande
Una papelera con unos pocos cupones es una decisión pequeña. Una papelera con 300 es un archivo, y purgarla elimina todo el registro de ofertas retiradas de la tienda.
Confírmalo con quien gestione las promociones de la tienda antes de ejecutarla a esa escala.
Después de purgar
- Comprueba el número de cupones y confirma que
trashes cero, o vuelve a llamar si no lo es. - Si purgaste para liberar un código, crea el nuevo cupón y confirma que el código se acepta.
Problemas comunes
| Síntoma | Causa |
|---|---|
| La escritura se rechaza | Puerta de escritura del catálogo cerrada |
pom_ai_mcp_wc_forbidden |
Falta manage_woocommerce o edit_shop_coupons |
| La papelera sigue sin estar vacía | Se enviaron a la papelera más de 100; vuelve a llamar |
| Exactamente 100 eliminados | El tamaño del lote por llamada, no el total |
| Un cupón no puede recuperarse | Correcto; esto es permanente |
| Un código sigue sin poder reutilizarse | Otro cupón en un estado distinto lo retiene |
Relacionado
wc_get_coupon_count— comprueba primero el tamañowc_delete_coupon— la alternativa selectiva- Herramientas de cupones