Skip to content

Internationalisation

Slab est multilingue et multidevise : traductions de contenu (sur les modèles), langues et devises gérées en base, fichiers de langue par namespace de package.

Par où l'étendre

Je veux…Point d'extensionMécanique
traduire les libellés de mon packageloadTranslationsFrom(__DIR__.'/../lang', 'mon-pkg')namespaces de lang
rendre mes traductions éditables dans le BOidem (l'éditeur découvre les namespaces)
changer la devise d'affichage couranteCurrentCurrencyResolverrésolveurs
rendre un modèle multilinguetrait HasTranslations (colonnes JSON)modèles

Deux niveaux de traduction

  • Contenu (nom de produit, page…) : porté par les modèles via HasTranslations, stocké en JSON.
  • Interface (libellés, e-mails…) : fichiers de langue, sous le namespace de chaque package (framework::, frontend::, le vôtre). L'éditeur de traductions du back-office agrège automatiquement les namespaces déclarés par loadTranslationsFrom.

TIP

Sans loadTranslationsFrom, les traductions de votre package restent invisibles à l'éditeur BO.

Voir aussi