|
Documentación
Reservar una demoPlataforma
PlataformaMCPCLIAPIFlujos de trabajo
Guías
Registro de cambios

Localización

  • Resumen
  • API de traducción
  • Localización de aplicaciones web
  • Localización de apps móviles
  • iOS con catálogos de cadenas
  • Android con strings.xml
  • Localización de emails
  • Contenido estático (p. ej., .md, .json)
  • Next.js con Markdoc
  • Rails con i18n

Flujos de trabajo

  • Configuración del motor con MCP
  • Triaje de Jira
  • CI/CD

Localización de emails

La CLI y la API de localización de Lingo.dev admiten dos enfoques para la localización de emails: traducir archivos de plantilla en tiempo de compilación para desplegar plantillas por idioma, o traducir el contenido en tiempo de ejecución antes del envío. Ambos pasan por un motor de localización configurado, con reglas de glosario, voz de marca y selección de modelo aplicadas automáticamente.

Elige tu enfoque#

EnfoqueIdeal paraCómo funciona
Tiempo de compilación (CLI)Archivos de plantilla: react-email, MJML, HTMLTraduce los archivos de tu repositorio y despliega plantillas por idioma
Tiempo de ejecución (API)Contenido dinámico, plantillas renderizadas por el ESPLlama a la API de localización antes del envío y pasa el contenido traducido a tu proveedor de email

¿Qué enfoque elegir?

Si tus plantillas de email están en tu repositorio como archivos (HTML, MJML o componentes de React), usa el enfoque en tiempo de compilación. Si el contenido del email se genera dinámicamente o está almacenado en tu proveedor de servicios de email, usa el enfoque en tiempo de ejecución.

Requisitos previos#

Cada traducción pasa por un motor de localización: la configuración que determina qué modelo LLM, glosario, voz de marca e instrucciones se aplican. Crea uno en el panel de Lingo.dev y genera una API key.

Localización en tiempo de compilación#

La CLI traduce directamente los archivos de plantillas de email. Configura un bucket que encaje con el formato de tu plantilla, ejecuta la CLI y obtén archivos de plantilla por idioma junto a tus plantillas de origen.

Las plantillas de react-email son componentes de React que se renderizan como HTML. Extrae las cadenas traducibles a archivos de recursos JSON con una librería de i18n como react-i18next y luego traduce los archivos JSON con la CLI.

json
{
  "$schema": "https://lingo.dev/schema/i18n.json",
  "version": "1.15",
  "locale": {
    "source": "en",
    "targets": ["es", "fr", "de", "ja"]
  },
  "buckets": {
    "json": {
      "include": ["emails/locales/[locale].json"]
    }
  }
}

En tiempo de renderizado, pasa el idioma a tu componente de email y carga el archivo JSON correspondiente. La función render() de react-email genera HTML específico por idioma listo para enviar.

Ejecuta las traducciones con:

bash
npx lingo.dev@latest run

Localización en tiempo de ejecución#

Cuando el contenido del email es dinámico —notificaciones personalizadas, resúmenes de contenido generado por usuarios o copy de marketing almacenado en un CMS—, tradúcelo en tiempo de ejecución antes de enviarlo. Esto sigue el patrón descrito en la guía de la API de traducción.

javascript
async function sendLocalizedEmail(userId, templateId, content) {
  const user = await db.users.findById(userId);

  const response = await fetch("https://api.lingo.dev/process/localize", {
    method: "POST",
    headers: {
      "X-API-Key": process.env.LINGODOTDEV_API_KEY,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({
      engineId: "eng_abc123",
      sourceLocale: "en",
      targetLocale: user.locale,
      data: {
        subject: content.subject,
        preheader: content.preheader,
        body: content.body,
      },
    }),
  });

  const { data } = await response.json();

  await emailProvider.send({
    to: user.email,
    subject: data.subject,
    html: renderTemplate(templateId, data),
  });
}

Buenas prácticas#

ÁreaRecomendación
AsuntosMantenlos por debajo de 50 caracteres. Usa un glosario para evitar que los nombres de marca se traduzcan.
Texto de vista previaTradúcelo por separado del cuerpo: los clientes de email lo muestran de forma independiente.
Voz de marcaConfigura el tono por idioma en el motor de localización. Los emails de marketing en japonés necesitan un registro distinto que en alemán.
Idiomas RTLPrueba el resultado renderizado en clientes de email para árabe, hebreo y persa. La gestión de dir="rtl" en HTML varía según el cliente.
Bloqueo de clavesUsa claves bloqueadas para URL, nombres de producto e identificadores legales que no deban traducirse.

Siguientes pasos#

API de traducción
Guía completa para la localización en tiempo de ejecución mediante la API
Voces de marca
Define el tono y el grado de formalidad por idioma de destino
Glosarios
Controla qué términos se traducen y cuáles se mantienen igual
Flujos de trabajo de CI/CD
Automatiza la traducción de plantillas de email en cada push

¿Te ha resultado útil esta página?

Max PrilutskiyMax Prilutskiy·Actualizado hace 4 meses·4 min de lectura