Para utilizar las funcionalidades completas de este sitio es necesario tener JavaScript habilitado. Aquí están las instrucciones para habilitar JavaScript en tu navegador web.
N8N Cache Purge API LiteSpeed Cache y Cloudflare - Wordpress Plugin

N8N Cache Purge API LiteSpeed Cache y Cloudflare - Wordpress Plugin

n8n Cache Purge API: LiteSpeed Cache + Cloudflare en WordPress (v1.7.0+)

Este plugin te permite purgar el caché de LiteSpeed Cache y Cloudflare vía API REST, ideal para integraciones con n8n, cronjobs, despliegues automáticos o flujos de e-commerce donde necesitas refrescar el contenido inmediatamente.

🚀 ¿Qué hace este plugin?

  • Purgar todo el caché de LiteSpeed Cache.
  • Purgar una URL específica en LiteSpeed.
  • Purgar caché de Cloudflare (todo o URLs específicas).
  • Purgar caché por ID de post/producto.
  • Purgar caché por tipo de post (posts, páginas, productos, etc.).
  • Purgar caché por categoría/taxonomía.
  • Endpoint combinado: LiteSpeed + Cloudflare en un solo call.
  • Obtener y gestionar logs vía REST API.
  • Autenticación por X-Token.
  • Restricción opcional por IP allowlist.
  • Filtros avanzados y exportación CSV.
  • Panel admin intuitivo con botones de prueba.

📦 Requisitos

  • WordPress 5.8+
  • Plugin LiteSpeed Cache (opcional pero recomendado)
  • Dominio en Cloudflare (opcional)
  • Permisos de administrador en WordPress

⚙️ Instalación

  1. Sube la carpeta del plugin a: wp-content/plugins/jf-cache-purge-api/
  2. Actívalo desde Plugins → Plugins instalados.
  3. En el menú lateral aparecerá Cache Purge API.
  4. Configura los parámetros en la sección Configuración.

🔐 Configuración

1) Token del plugin

En el panel del plugin, genera un token usando el botón "Generar token aleatorio" y guarda los cambios.

Este token se usa en todos los requests como header:

X-Token: TU_TOKEN_SEGURO
  

Nuevo en v1.7.0+: Botón "Copiar token" para copiar rápidamente al portapapeles.

2) Configurar Cloudflare

Necesitas:

  • Zone ID (Cloudflare → tu dominio → Overview → Zone ID)
  • API Token (NO uses Global API Key)

Permisos mínimos del API Token:

  • Zone → Cache Purge → Edit
  • Zone Resources → Include → Specific zone → tu dominio

Nuevo: Botón "Probar Cloudflare" para verificar que la configuración es correcta.

3) Allowlist de IPs (opcional)

Puedes limitar el acceso agregando una IP por línea. Si se activa, solo esas IPs podrán usar los endpoints.

192.168.1.1
10.0.0.5
203.0.113.45
  

🔌 Endpoints disponibles (v1.7.0+)

Todos los endpoints requieren POST (excepto GET /logs) y header X-Token.

Endpoint Método Descripción
/purge-all POST Purge total (LiteSpeed + CF)
/litespeed/purge-all POST Purge LiteSpeed
/litespeed/purge-url POST Purge URL LiteSpeed
/cloudflare/purge-all POST Purge Cloudflare todo
/cloudflare/purge-urls POST Purge URLs en CF
🆕 /purge/post-id POST Purge por ID post/producto
🆕 /purge/urls POST Purge por lista URLs
🆕 /purge/post-type POST Purge por tipo post
🆕 /purge/category POST Purge por categoría
🆕 /purge/product-id POST Purge producto (alias)
🆕 /logs GET Obtener logs
🆕 /logs/clear POST Limpiar logs

Parámetros de los nuevos endpoints

post-id / product-id:

  • id (integer, required): ID del post/producto

purge/urls:

  • files (array, required): Array de URLs a purgar

post-type:

  • post_type (string, required): Tipo de post (post, page, product, custom)
  • limit (integer, optional): Máximo de posts a purgar (default: 100, máx: 1000)

category:

  • taxonomy (string, optional): Taxonomía (category, product_cat, tag, custom - default: category)
  • term_id (integer, optional): ID del término
  • slug (string, optional): Slug del término
  • limit (integer, optional): Máximo de posts a purgar (default: 100, máx: 1000)

logs:

  • limit (integer, optional): Máximo de registros (default: 50, máx: 5000)
  • action (string, optional): Filtrar por acción
  • status (string, optional): Filtrar por status (success, error)

🧪 Ejemplos con curl

Purgar todo (LiteSpeed + Cloudflare):

curl -X POST "https://tudominio.com/wp-json/jf-cache/v1/purge-all" 
  -H "X-Token: TU_TOKEN" 
  -H "Content-Type: application/json"
  

Purgar por ID de post:

curl -X POST "https://tudominio.com/wp-json/jf-cache/v1/purge/post-id" 
  -H "X-Token: TU_TOKEN" 
  -H "Content-Type: application/json" 
  -d '{"id":123}'
  

Purgar lista de URLs:

curl -X POST "https://tudominio.com/wp-json/jf-cache/v1/purge/urls" 
  -H "X-Token: TU_TOKEN" 
  -H "Content-Type: application/json" 
  -d '{"files":["https://tudominio.com/","https://tudominio.com/blog/"]}'
  

Purgar todos los productos (WooCommerce):

curl -X POST "https://tudominio.com/wp-json/jf-cache/v1/purge/post-type" 
  -H "X-Token: TU_TOKEN" 
  -H "Content-Type: application/json" 
  -d '{"post_type":"product","limit":200}'
  

Purgar por categoría de productos:

curl -X POST "https://tudominio.com/wp-json/jf-cache/v1/purge/category" 
  -H "X-Token: TU_TOKEN" 
  -H "Content-Type: application/json" 
  -d '{"slug":"ropa","taxonomy":"product_cat"}'
  

Obtener últimos 50 logs:

curl -X GET "https://tudominio.com/wp-json/jf-cache/v1/logs?limit=50" 
  -H "X-Token: TU_TOKEN"
  

Limpiar todos los logs:

curl -X POST "https://tudominio.com/wp-json/jf-cache/v1/logs/clear" 
  -H "X-Token: TU_TOKEN" 
  -H "Content-Type: application/json"
  

🤖 Uso en n8n

  1. Nodo HTTP Request
  2. Método: POST (o GET para /logs)
  3. URL del endpoint: https://tudominio.com/wp-json/jf-cache/v1/purge/post-id
  4. Headers:
X-Token: TU_TOKEN
Content-Type: application/json
  

Body: JSON según el endpoint (ej. {"id":123})

💡 Ejemplo de workflow n8n: Trigger en webhook (cuando se publica post) → HTTP Request a /wp-json/jf-cache/v1/purge/post-id → Enviar el ID del post recién publicado → ✅ Caché purgado automáticamente

🧰 Panel de administración

Nuevo en v1.7.0+:

  • ✨ Botón "Copiar token" - Copia rápidamente el token al portapapeles
  • 🔍 Botón "Probar Cloudflare" - Valida la configuración
  • 📋 Botón "Purgar todo ahora" - Ejecuta purge inmediato
  • 🗑️ Botón "Limpiar logs" - Elimina todos los registros
  • 🔎 Filtros avanzados - Por acción y status
  • 📊 Exportar logs a CSV - Con los filtros aplicados

❗ Errores comunes

❌ "Authentication error (Cloudflare)" o "Cloudflare respondió con error"

  • Token sin permisos (requiere Zone.Cache Purge)
  • Zone ID incorrecto
  • Uso de Global API Key (debe ser API Token)

Solución:

  1. Abre Cloudflare Dashboard
  2. Ve a tu dominio → Overview
  3. Copia el Zone ID exacto
  4. Crea un nuevo API Token con permisos Zone.Cache Purge
  5. Haz clic en "Probar Cloudflare" en el panel del plugin

❌ "No autorizado (token)"

  • Header incorrecto (debe ser X-Token en minúsculas)
  • Token no guardado en el plugin

Solución:

  1. En el panel del plugin, genera un nuevo token
  2. Haz clic en "Guardar configuración"
  3. Verifica que el header sea exactamente X-Token: TOKEN

❌ "Zone ID vacío" o "API Token no está configurado"

Solución:

  1. Abre Cache Purge API → Configuración
  2. Completa Cloudflare Zone ID y Cloudflare API Token
  3. Haz clic en "Guardar configuración"
  4. Intenta de nuevo

❌ "No posts encontrados" (post-type, category)

  • No hay posts públicos del tipo/categoría especificado
  • El parámetro limit es muy bajo

Solución:

  • Aumenta el parámetro limit
  • Verifica que existan posts públicos
  • Usa slug en lugar de term_id para categorías

📚 Logs y debugging

Ver logs en el admin:

  • Cache Purge API → Configuración (abajo)
  • Filtrar por acción o status
  • Exportar a CSV para análisis

Via REST API:

curl -X GET "https://tudominio.com/wp-json/jf-cache/v1/logs?limit=100&status=error" 
  -H "X-Token: TU_TOKEN"
  

🔄 Casos de uso

  • Publicación automática: Purgar caché al publicar post en n8n
  • E-commerce: Purgar productos cuando cambia stock
  • Cronos: Limpiar caché diariamente a cierta hora
  • Despliegues: Purgar caché después de actualizar código
  • CI/CD: Integración con GitHub Actions, GitLab CI, Jenkins
  • Webhooks: Responder a cambios externos (inventario, sindicatos, etc.)

Versión: 1.7.0+ | Última actualización: Diciembre 2025 | Autor: Jaime Franko
jaimefranko.com


Compartir esta publicación

Deja un comentario