DocumentaciónGuía para DesarrolladoresHerramientas de Marketing de Contenidos y Blog

📝 Funciones de Contenido y Marketing

La plataforma incorpora herramientas integradas para que los equipos de contenido y marketing disfruten de alta flexibilidad sin comprometer la seguridad ni el rendimiento.


👁️ Vista Previa en Vivo de CMS (Next.js Draft Mode)

La tienda está totalmente integrada con el sistema de Preview en Strapi y el mecanismo Draft Mode de Next.js. Esta función permite al equipo editorial ver contenidos en borrador (Draft) directamente en la plantilla real del frontend.

Flujo de trabajo:

  1. Inicio: El redactor hace clic en el botón Preview en el panel de Strapi.
  2. Validación: Strapi redirige al usuario a la ruta api/preview/route.ts con una URL firmada que contiene REVALIDATE_SECRET.
  3. Activación de Draft Mode: El servidor valida el hash HMAC mediante node:crypto y activa el modo borrador enviando una cookie de sesión segura.
  4. Renderizado en Vivo: El usuario es redirigido a la página de destino y visualiza la versión preliminar del contenido.
Clave Unificada con REVALIDATE_SECRET
Para simplificar la configuración y unificar la seguridad, tanto la vista previa en vivo de Strapi como los webhooks de ISR comparten la misma variable de entorno REVALIDATE_SECRET en tu archivo raíz .env, eliminando la necesidad de una clave adicional.

📨 Boletín Informativo y Anti-Spam (Rate Limiting)

El sistema de suscripción al boletín (ruta api/newsletter/route.ts) está conectado directamente al potente CRM SendPulse.

Seguridad mediante Limitación de Tasa (Rate Limiting)

Para prevenir el abuso de bots y la saturación de la base de datos o cuotas de API de terceros, este endpoint utiliza un Rate Limiter nativo basado en IP.

  • Peticiones máximas permitidas: 2 solicitudes
  • Ventana de tiempo: 1 hora (60 * 60 * 1000 milisegundos)
  • Mecanismo de rastreo: La IP del usuario se extrae del encabezado x-forwarded-for y se monitoriza en la memoria caché del servidor.
  • Si se supera el límite, el servidor devuelve un error 429 Too Many Requests.
.env (Variables de SendPulse)
bash
SENDPULSE_API_ID=your_api_id
SENDPULSE_API_SECRET=your_api_secret
SENDPULSE_BOOK_ID=your_target_mailing_list_id