Aller au contenu principal

Introduction

Récupérez les langues configurées dans votre projet pour alimenter du contenu multilingue et la détection de la locale.

Plus d'informations sur l'interface utilisateur du module https://doc.oneentry.cloud/docs/category/languages


🎯 Que fait ce module ?

Le module Locales vous permet de récupérer les langues actives configurées dans votre projet OneEntry - afin que vous puissiez créer des applications internationalisées qui servent du contenu en plusieurs langues.

Au lieu de coder en dur les langues dans votre application, vous récupérez dynamiquement la liste des langues actives depuis OneEntry, permettant à votre contenu de s'adapter aux locales que vous avez activées (anglais, russe, arabe, espagnol, etc.). Les langues sont configurées dans le panneau d'administration de OneEntry ; le SDK est en lecture seule et ne récupère que celles-ci.

🚀 Démarrage rapide

Initialisez le module depuis defineOneEntry :


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

Récupérez les locales actives et lisez leurs champs :

// 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);
});

✨ Concepts clés

Qu'est-ce qu'une Locale ?

Une locale est une combinaison de langue et de région qui détermine comment le contenu est affiché :

  • Code de langue - code de langue ISO 639-1 (par exemple, en, ru, ar)
  • Code de région - code de pays ISO 3166-1 (par exemple, US, GB, RU)
  • Identifiant de locale - format combiné : language_REGION (par exemple, en_US, ru_RU, ar_SA)

Exemples :

Code de localeLangueRégionDescription
en_USAnglaisÉtats-UnisAnglais américain
en_GBAnglaisGrande-BretagneAnglais britannique
ru_RURusseRussieRusse
es_ESEspagnolEspagneEspagnol européen
es_MXEspagnolMexiqueEspagnol mexicain
ar_SAArabeArabie SaouditeArabe (Arabie Saoudite)
fr_FRFrançaisFranceFrançais
de_DEAllemandAllemagneAllemand

Structure de la Locale

Chaque locale retournée par getLocales() (ILocalEntity) a :

{
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
}

Code de Locale vs Code Court

Chaque locale a deux formats de code :

ChampFormatExempleUtilisé pour
codelanguage_REGIONen_US, ru_RUIdentification complète de la locale
shortCodelanguageen, ruIdentification uniquement par langue

📋 Ce que vous devez savoir

Les locales sont configurées dans le panneau d'administration (lecture seule)

Vous ne pouvez pas créer, mettre à jour ou supprimer des locales via le SDK - elles sont configurées dans le panneau d'administration de OneEntry :

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

Le SDK est uniquement destiné à récupérer les informations de locale.

Le SDK ne retourne que les locales actives

getLocales() ne retourne que les objets de localisation de langue actifs (isActive: true). Les locales inactives configurées dans le panneau d'administration ne sont pas retournées, il n'est donc pas nécessaire de les filtrer côté client. Chaque locale retournée porte toujours le drapeau isActive (toujours true ici), ainsi que code, shortCode, name, nativeName, image, et position.

Il n'y a pas de champ de locale par défaut dans la réponse — choisissez et stockez une langue de secours dans votre propre application.


📊 Tableau de référence rapide

MéthodeDescriptionCas d'utilisation
getLocales()Obtenir toutes les locales activesRécupérer les langues disponibles

❓ Questions fréquentes (FAQ)

Comment ajouter de nouvelles langues à mon projet ?

Vous ne pouvez pas ajouter de locales via le SDK. Les locales sont configurées dans le panneau d'administration de OneEntry.


getLocales() retourne-t-il des langues inactives ?

Non. Le SDK ne retourne que les locales actives (isActive: true). Les langues désactivées dans le panneau d'administration ne sont pas incluses dans la réponse.


Puis-je mettre en cache les locales ?

Oui. Les locales changent rarement, donc il est recommandé de mettre en cache le résultat pour des performances optimales.


Comment gérer les traductions manquantes ?

Choisissez une langue de secours dans votre application et revenez à celle-ci lorsque le contenu est manquant pour la locale demandée — getLocales() n'inclut pas de champ de locale par défaut.


🎓 Meilleures pratiques

  • Comptez sur la liste active - Le SDK retourne déjà uniquement les locales activées, donc aucun filtrage côté client n'est nécessaire.
  • Mettez en cache les locales - Elles changent rarement ; mettez en cache le résultat pour des performances optimales.
  • Choisissez votre propre langue de secours - Il n'y a pas de champ de locale par défaut ; gérez les traductions manquantes dans votre application.
  • Faites correspondre code et shortCode - Utilisez code (en_US) pour une identification complète et shortCode (en) pour une logique uniquement linguistique.

🔗 Documentation connexe