¿Qué hace este flujo y qué problema resuelve?
El problema: La empresa está en expansión internacional, pero el equipo de marketing es pequeño. Traducir cada post del blog, adaptar el mensaje a las redes sociales de cada país y subirlo a WordPress es un cuello de botella que retrasa semanas el lanzamiento de campañas.
La solución: Un flujo n8n que monitoriza el gestor de proyectos (Notion o Asana) y, en el momento en que un artículo cambia a estado "Aprobado para Traducción", ejecuta automáticamente la cadena completa: descarga el contenido, lo traduce con DeepL, lo localiza culturalmente con Claude (adaptando tono, expresiones y ejemplos a cada mercado), genera los copys para LinkedIn y Twitter en cada idioma, y crea borradores en WordPress y Buffer listos para revisión final.
Estado "Aprobado"
Traducción base
Localización cultural
Borradores listos
Impacto esperado: Lanzamiento simultáneo de campañas en 4 países el mismo día. Ahorro del 80% en costes de traducción de contenidos de bajo y medio impacto. El equipo se centra en la estrategia, no en el copy-paste.
Cuándo usar este flujo
| ✓ Úsalo cuando… | × No lo uses cuando… |
|---|---|
|
|
Prerrequisitos
Antes de empezar, asegúrate de tener acceso a las siguientes herramientas y credenciales:
| Herramienta | Requisito | Uso en el flujo |
|---|---|---|
| n8n | Instancia operativa (Cloud o self-hosted) | Orquestador central del flujo |
| Notion / Asana | Gestión editorial con campo "Estado" | Trigger al cambiar a "Aprobado para Traducción" |
| DeepL API | Clave API válida (plan Pro recomendado) | Traducción base precisa en 4 idiomas |
| Anthropic (Claude) | Clave API válida (Claude Sonnet 4) | Localización cultural y generación de copys para redes |
| WordPress | Acceso API REST habilitado + credenciales | Creación del post en borrador con imágenes y SEO |
| Buffer | Cuenta conectada con perfiles de redes sociales | Programación de posts en LinkedIn y Twitter |
Definición de la Voz de Marca por idioma
Antes de configurar el flujo, el CMO debe crear un documento breve con las instrucciones de estilo para cada idioma. Estas instrucciones se usarán como prompt de sistema para Claude en el paso de localización cultural.
- 1Crea un documento de Voz de Marca: Define el tono, tratamiento (tuteo/ustedeo), expresiones a evitar y ejemplos de referencia para cada mercado. Ejemplo para Francia: "Usa el tratamiento de 'vous', mantén un tono profesional pero innovador, y prioriza ejemplos de la industria europea."
- 2Guarda las instrucciones en Notion: Crea una base de datos con una fila por idioma (EN, FR, DE, IT) y un campo "Guía de Estilo" con el texto de instrucciones. El flujo leerá estas instrucciones dinámicamente en cada iteración.
- 3Define los idiomas objetivo: Configura en n8n la lista de idiomas como variable de entorno:
IDIOMAS_OBJETIVO = ["en", "fr", "de", "it"]. El flujo iterará sobre esta lista en el paso de traducción.
Configuración del Trigger y descarga del artículo
El flujo se activa automáticamente cuando un artículo cambia de estado en el gestor de proyectos. A continuación, descarga el contenido completo para procesarlo.
- 1Configura el nodo Notion Trigger (o Asana): Selecciona la base de datos editorial y configura el trigger para que se active cuando la propiedad "Estado" cambie a "Aprobado para Traducción". Establece un intervalo de polling de 5 minutos.
- 2Descarga el contenido completo: Añade un nodo Notion (Get Page) para descargar el cuerpo completo del artículo. El contenido llega en formato de bloques Notion; usa un nodo Code para convertirlo a Markdown limpio.
- 3Extrae los metadatos: Recupera el título, la categoría SEO, las etiquetas y la imagen destacada del artículo. Estos datos se usarán para configurar el post en WordPress.
Traducción y localización cultural (bucle por idioma)
Este es el núcleo del flujo. Para cada idioma objetivo, se ejecuta una cadena de dos pasos: traducción base con DeepL y localización cultural con Claude.
- 1Configura el bucle de idiomas: Usa un nodo SplitInBatches para iterar sobre la lista de idiomas objetivo. Cada iteración procesará un idioma de forma independiente.
- 2Traducción base con DeepL: Pasa el Markdown del artículo al nodo DeepL con el idioma de destino de la iteración actual. DeepL produce una traducción gramaticalmente precisa que servirá de base para Claude.
- 3Localización cultural con Claude: Pasa la traducción de DeepL a Claude junto con la guía de estilo del idioma correspondiente. Claude adapta el tono, sustituye expresiones idiomáticas y genera los copys para LinkedIn y Twitter.
Publicación en WordPress y Buffer
Una vez localizado el contenido para cada idioma, el flujo crea los borradores en las plataformas de publicación.
- 1Crea el borrador en WordPress: Usa el nodo WordPress (Create Post) con estado "draft". Incluye el artículo localizado como contenido, el título traducido, la imagen destacada original, las categorías y las etiquetas SEO en el idioma correspondiente.
- 2Programa los posts en Buffer: Usa el nodo HTTP Request para llamar a la API de Buffer y crear posts programados para LinkedIn y Twitter. Configura la fecha de publicación con un offset de 24 horas para dar tiempo a la revisión.
- 3Notificación al equipo: Añade un nodo Slack o Email para notificar al responsable de cada mercado que los borradores están listos, con un enlace directo al borrador de WordPress.
- 4Actualiza el estado en Notion: Cambia el estado del artículo a "Borradores Creados" en Notion para cerrar el ciclo y evitar reprocesados.
Output esperado del flujo
Cuando el flujo se ejecuta correctamente para un artículo aprobado en 4 idiomas, produce los siguientes artefactos:
| Artefacto | Tipo | Descripción | Destino |
|---|---|---|---|
| articulo_localizado_[idioma] | HTML / Markdown | Artículo traducido y adaptado culturalmente para cada mercado | WordPress (borrador) |
| post_linkedin_[idioma] | String ≤1.300 chars | Copy para LinkedIn con gancho, puntos clave y hashtags locales | Buffer (programado) |
| post_twitter_[idioma] | String ≤280 chars | Versión ultra-concisa del mensaje para Twitter/X | Buffer (programado) |
| notificacion_equipo | Email / Slack | Aviso al responsable de mercado con enlace al borrador | Slack / Email |
Por cada artículo aprobado, el flujo genera 4 borradores de WordPress + 8 posts de redes sociales (LinkedIn + Twitter × 4 idiomas), listos para revisión y publicación en minutos.
Problemas frecuentes y cómo resolverlos
Estos son los errores más habituales al configurar este flujo por primera vez, con su causa y solución:
- 1Claude devuelve JSON mal formado: El modelo a veces añade texto antes o después del JSON. Solución: añade un nodo Code después de Claude que extraiga el JSON con una expresión regular. También puedes usar el parámetro
response_format: {"type": "json_object"}en la llamada a la API para forzar la respuesta en JSON puro. - 2DeepL traduce correctamente pero Claude no localiza el tono: El prompt de localización no tiene suficiente contexto sobre el mercado destino. Revisa la guía de estilo por idioma en el Paso 01 y añade ejemplos concretos de tono para cada mercado: formal o informal, referencias culturales, longitud de oraciones.
- 3El nodo Notion Trigger no se dispara: Verifica que el campo Estado en Notion es una propiedad de tipo Select y no Status. El nodo Notion Trigger de n8n solo detecta cambios en propiedades Select. Si usas Status, necesitas un webhook personalizado o un cron que consulte la base de datos cada 5 minutos.
- 4WordPress rechaza el borrador con error 403: El usuario de la API de WordPress no tiene permisos suficientes. Crea un usuario específico para n8n con rol Editor y genera una contraseña de aplicación en Usuarios → Perfil → Contraseñas de aplicación. Nunca uses las credenciales del administrador principal.
Adaptaciones del flujo para otros contextos
Este flujo se puede adaptar fácilmente a otros casos de uso cambiando el trigger o el destino de publicación:
- AVariante Asana: Sustituye el nodo Notion Trigger por un nodo Asana Trigger con el evento
task.updated. Filtra por el campo personalizado Estado de Traducción = Aprobado. El resto del flujo es idéntico. - BVariante sin DeepL (solo Claude): Si el presupuesto no permite DeepL, sustituye el paso de traducción por una llamada directa a Claude con el prompt de traducción y localización combinados. La calidad gramatical es ligeramente inferior al dúo DeepL+Claude, pero suficiente para la mayoría de mercados.
- CVariante para newsletter: En lugar de publicar en WordPress, envía los borradores traducidos a Mailchimp o Brevo como campañas en borrador. Añade un nodo de aprobación por email antes del envío: el responsable de cada mercado recibe el borrador y hace clic en Aprobar o Rechazar antes de que se programe el envío.
¿Qué hacer ahora?
Ahora que tienes el flujo configurado, hay dos caminos naturales para ampliar su impacto: