Ir al contenido

Idiomas y configuraciones regionales

Qué es esto

Cómo gestiona ComStack los idiomas y las configuraciones regionales (locales). Las páginas se crean en un idioma predeterminado y se traducen automáticamente al publicarse. El enrutamiento de URL, el soporte RTL y las funciones específicas de cada región se basan en los códigos de idioma BCP-47.

Cómo funciona

Soporte de idiomas

La plataforma admite 102 idiomas únicos (112 entradas de configuración regional, incluyendo variantes regionales como en-GB, es-MX, zh-CN).

CapacidadCantidad
Total de entradas regionales112
Idiomas base únicos102
Soporte de voz97 idiomas (107 entradas)
Soporte de escritura RTL10

Idioma predeterminado vs. adicionales

Cada proyecto tiene un idioma predeterminado (p. ej., en). Las páginas se redactan en este idioma y se traducen automáticamente a cada idioma adicional en el momento de la publicación.

  • Idioma predeterminado → URL raíz: https://example.com/guides/intro
  • Idioma adicional → URL con prefijo: https://example.com/es/guias/intro

Redactas una vez; el proceso de publicación se encarga de la distribución de las traducciones. Consulta el concepto de Traducciones.

Enrutamiento de URL

Las configuraciones regionales utilizan códigos cortos como prefijos de URL:

Configuración regionalPrefijo de URL
Predeterminado (p. ej., en)Ninguno — ruta raíz
Español (es o es-MX)/es/
Bokmål noruego (nb)/nb/
Chino simplificado (zh-CN)/zh/
Inglés británico (en-GB)Usa la raíz predeterminada (si en es el predeterminado)

Los códigos regionales se normalizan a su forma corta para las URL (zh-CNzh, es-MXes).

Dos variantes del mismo idioma base no pueden coexistir en un mismo proyecto. es-ES y es-MX se asignan ambos a /es/, lo que crea una colisión de URL. La configuración del proyecto impide esto rechazando cualquier idioma que colisione con un código corto existente.

Nomenclatura de campos BCP-47

El campo language almacenado en cada página (p. ej., es-MX) es la etiqueta BCP-47 completa. Determina:

  • El atributo HTML lang
  • La dirección de diseño RTL
  • El idioma de la solicitud de traducción
  • La selección de idioma del asistente de voz

El prefijo de URL utiliza solo el código corto. Son independientes: cambiar el idioma de un proyecto de es a es-MX mejora la calidad de la traducción sin cambiar las URL.

Añadir una configuración regional

Añade un idioma adicional a través de la configuración del módulo del proyecto (PUT /api/projects/:id/modules/knowledge_base). Cuando se añade un idioma, el servidor ejecuta una distribución de traducción automática que crea borradores de cada página del idioma original. Estos borradores no están activos hasta la siguiente publicación.

Previsualiza la distribución sin guardar: POST .../modules/knowledge_base/locales/preview.

Idiomas RTL

Estos 10 idiomas utilizan escritura de derecha a izquierda: la plataforma aplica el diseño RTL automáticamente:

ar (árabe), dv (divehi), fa (persa), he (hebreo), ku (kurdo), ps (pastún), sd (sindhi), ug (uigur), ur (urdu), yi (yidis)

Cuándo usarlo

  • Establece el idioma predeterminado al crear el proyecto: determina la ruta URL raíz y el idioma fuente para todas las traducciones.
  • Añade idiomas adicionales cuando necesites versiones traducidas de tu contenido.
  • Usa la etiqueta BCP-47 completa al configurar language en una página vía API: controla la calidad de la traducción y el comportamiento de voz regional.
  • Usa el código corto al construir o referenciar URL.

Errores comunes

ErrorCausaSolución
400 violations: locale would create URL collisionAñadir es-MX cuando es-ES ya existe (ambos resuelven a /es/)Elimina el idioma conflictivo antes de añadir el nuevo
La página traducida muestra contenido en el idioma fuenteLos borradores de traducción aún no se han publicadoLa distribución crea borradores; publica para desplegarlos
Diseño RTL no aplicadoFalta el código regional en el registro RTLConfirma que el código BCP-47 esté en la lista RTL anterior
Prefijo de idioma incorrecto en la URLEl campo language de la página no coincide con un idioma configuradoAsegúrate de que el language de la página sea uno de project.locales

Relacionado

Última actualización: