Saltar al contenido principal

Introducción

Obtén los idiomas configurados en tu proyecto para potenciar contenido multilingüe y detección de locales.

Más información sobre la interfaz de usuario del módulo https://doc.oneentry.cloud/docs/category/languages


🎯 ¿Qué hace este módulo?

El módulo Locales te permite obtener los idiomas activos configurados en tu proyecto de OneEntry, para que puedas construir aplicaciones internacionalizadas que sirvan contenido en múltiples idiomas.

En lugar de codificar los idiomas en tu aplicación, obtienes la lista de idiomas activos de OneEntry de forma dinámica, permitiendo que tu contenido se adapte a los locales que has habilitado (inglés, ruso, árabe, español, etc.). Los idiomas se configuran en el panel de administración de OneEntry; el SDK es de solo lectura y solo los obtiene.

🚀 Inicio Rápido

Inicializa el módulo desde defineOneEntry:


const { Locales } = defineOneEntry(
"your-project-url", {
"token": "your-app-token"
}
);

Obtén los locales activos y lee sus campos:

// Returns only active locales (isActive: true).
const locales = await Locales.getLocales();

console.log(`${locales.length} active languages`);

locales.forEach((locale) => {
console.log(locale.code, locale.name, locale.shortCode);
});

✨ Conceptos Clave

¿Qué es un Locale?

Un locale es una combinación de idioma y región que determina cómo se muestra el contenido:

  • Código de Idioma - Código de idioma ISO 639-1 (por ejemplo, en, ru, ar)
  • Código de Región - Código de país ISO 3166-1 (por ejemplo, US, GB, RU)
  • Identificador de Locale - Formato combinado: idioma_REGIÓN (por ejemplo, en_US, ru_RU, ar_SA)

Ejemplos:

Código de LocaleIdiomaRegiónDescripción
en_USInglésEstados UnidosInglés Americano
en_GBInglésGran BretañaInglés Británico
ru_RURusoRusiaRuso
es_ESEspañolEspañaEspañol Europeo
es_MXEspañolMéxicoEspañol Mexicano
ar_SAÁrabeArabia SauditaÁrabe (Arabia Saudita)
fr_FRFrancésFranciaFrancés
de_DEAlemánAlemaniaAlemán

Estructura de Locale

Cada locale devuelto por getLocales() (ILocalEntity) tiene:

{
id: 146, // unique ID
shortCode: 'en', // short code
code: 'en_US', // full code
name: 'English (USA)', // name
nativeName: 'English (USA)', // native name
isActive: true, // is active (always true here)
image: null, // image
position: 1, // position
}

Código de Locale vs. Código Corto

Cada locale tiene dos formatos de código:

CampoFormatoEjemploUso Para
codeidioma_REGIÓNen_US, ru_RUIdentificación completa del locale
shortCodeidiomaen, ruIdentificación solo del idioma

📋 Lo Que Necesitas Saber

Los locales se configuran en el panel de administración (solo lectura)

No puedes crear, actualizar o eliminar locales a través del SDK; se configuran en el panel de administración de OneEntry:

OneEntry Admin Panel → Settings → Languages → Add Language → Select Locale

El SDK es solo para obtener información de locales.

El SDK solo devuelve locales activos

getLocales() devuelve solo los objetos de localización de idioma activos (isActive: true). Los locales inactivos configurados en el panel de administración no se devuelven, por lo que no es necesario filtrarlos en el cliente. Cada locale devuelto aún lleva la bandera isActive (siempre true aquí), junto con code, shortCode, name, nativeName, image y position.

No hay un campo de locale predeterminado en la respuesta: elige y almacena un idioma de respaldo en tu propia aplicación.


📊 Tabla de Referencia Rápida

MétodoDescripciónCaso de Uso
getLocales()Obtener todos los locales activosObtener idiomas disponibles

❓ Preguntas Comunes (FAQ)

¿Cómo agrego nuevos idiomas a mi proyecto?

No puedes agregar locales a través del SDK. Los locales se configuran en el panel de administración de OneEntry.


¿getLocales() devuelve idiomas inactivos?

No. El SDK solo devuelve locales activos (isActive: true). Los idiomas deshabilitados en el panel de administración no se incluyen en la respuesta.


¿Puedo almacenar en caché los locales?

Sí. Los locales rara vez cambian, por lo que se recomienda almacenar el resultado en caché para mejorar el rendimiento.


¿Cómo manejo las traducciones faltantes?

Elige un idioma de respaldo en tu aplicación y recurre a él cuando falte contenido para el locale solicitado: getLocales() no incluye un campo de locale predeterminado.


🎓 Mejores Prácticas

  • Confía en la lista activa - El SDK ya devuelve solo los locales habilitados, por lo que no se necesita filtrado del lado del cliente.
  • Almacena en caché los locales - Rara vez cambian; almacena el resultado en caché para mejorar el rendimiento.
  • Elige tu propio idioma de respaldo - No hay un campo de locale predeterminado; maneja las traducciones faltantes en tu aplicación.
  • Coincide code vs shortCode - Usa code (en_US) para identificación completa y shortCode (en) para lógica solo de idioma.

🔗 Documentación Relacionada