Auteur:
    Création:2026-06-12Dernière mise à jour:2026-06-26

    Dictionnaires dynamiques

    Intlayer prend en charge deux mécanismes pour exprimer du contenu qui dépasse un simple dictionnaire statique par clé. Chacun est déclaré via un champ de métadonnées de premier niveau dans le fichier de contenu ; aucune fonction d'encapsulation n'est nécessaire.

    Fonctionnalité Champ de métadonnées Sélecteur dans useIntlayer
    Collections item: N { item: N }
    Variantes variant: "name" ou variant: { … } { variant: "name" } ou { variant: { … } }

    Les deux se combinent avec l'argument de locale et prennent en charge le chargement sélectif / différé via importMode.

    Quand utiliser quoi

    • Collections — liste ordonnée d'éléments gérés dans des fichiers séparés (entrées de FAQ, articles de blog, produits).
    • Variantes — alternatives de contenu nommées ou structurées :
      • une variante chaîne pour les tests A/B, les bannières saisonnières ou les feature flags ;
      • une variante objet pour les enregistrements de CMS, le contenu propre à un utilisateur ou tout contenu adressé par un ensemble de champs (les anciens « enregistrements dynamiques »).
    Les versions précédentes exposaient un champ meta distinct pour le contenu indexé par enregistrement. Il a été fusionné dans variant : passez un objet à variant au lieu d'utiliser meta.

    Désambiguïsation du sélecteur

    Une clé peut déclarer les deux dimensions à la fois (par ex. une collection dont chaque élément possède une variante). Elles sont résolues dans l'ordre :

    plaintext
    variant → item

    Ainsi { variant: "promo" } sur une clé variante × item renvoie tous les éléments promo sous forme de tableau, et ajouter { item: 2 } réduit le résultat à une seule entrée.