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 locale | Langue | Région | Description |
|---|---|---|---|
en_US | Anglais | États-Unis | Anglais américain |
en_GB | Anglais | Grande-Bretagne | Anglais britannique |
ru_RU | Russe | Russie | Russe |
es_ES | Espagnol | Espagne | Espagnol européen |
es_MX | Espagnol | Mexique | Espagnol mexicain |
ar_SA | Arabe | Arabie Saoudite | Arabe (Arabie Saoudite) |
fr_FR | Français | France | Français |
de_DE | Allemand | Allemagne | Allemand |
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 :
| Champ | Format | Exemple | Utilisé pour |
|---|---|---|---|
code | language_REGION | en_US, ru_RU | Identification complète de la locale |
shortCode | language | en, ru | Identification 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éthode | Description | Cas d'utilisation |
|---|---|---|
| getLocales() | Obtenir toutes les locales actives | Ré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
codeetshortCode- Utilisezcode(en_US) pour une identification complète etshortCode(en) pour une logique uniquement linguistique.
🔗 Documentation connexe
- Module Pages - Récupérer le contenu des pages localisées
- Module Produits - Gérer des produits multilingues
- Module GeneralTypes - Classification des types d'entités
- Module Admins - Utilisateurs administrateurs qui gèrent les locales