Onglets

Une balise <tab> fait référence à un onglet existant ou nouveau dans la configuration du système.

Référence d’attribut d’onglet

Une balise <tab> peut avoir les attributs suivants :

AttributDescriptionTypeObligatoire
idDéfinit l’identifiant utilisé pour référencer la section.typeIdrequired
translateDéfinit le champ à traduire. Fournissez label pour rendre l’étiquette traduisible.stringfacultatif
sortOrderDéfinit l’ordre de tri de la section. Les nombres élevés poussent la section vers le bas de la page ; les nombres faibles poussent la section vers le haut.floatfacultatif
classAjoute une classe CSS définie à l’élément d’HTML de l’onglet rendu.stringfacultatif

Référence du noeud de tabulation

Une balise <tab> peut avoir l’enfant suivant :

NoeudDescriptionType
labelDéfinit le libellé affiché dans l’interface frontale.string

Exemple : créer un onglet

Le fragment de code suivant illustre la création d’un nouvel onglet avec des exemples de données.

<?xml version="1.0" ?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Config:etc/system_file.xsd">
    <system>
        <tab id="A_UNIQUE_ID" translate="label" class="a-custom-css-class-to-style-this-tab" sortOrder="10">
            <label>A meaningful label</label>
        </tab>
    </system>
</config>

Le fragment de code ci-dessus crée un nouvel onglet avec l’identifiant A_UNIQUE_ID. Comme l’attribut translate est défini et référence le libellé, le noeud label peut être traduit. Pendant le processus de rendu, la classe CSS a-custom-css-class-to-style-this-tab sera appliquée à l’élément d’HTML créé pour cet onglet.
L’attribut sortOrder avec la valeur 10 définit la position de l’onglet dans la liste de tous les onglets lors du rendu.

Sections

Une balise <section> fait référence à une section existante ou nouvelle dans la configuration du système.

Référence d’attribut de section

Une balise <section> peut avoir les attributs suivants :

AttributDescriptionTypeObligatoire
idDéfinit l’identifiant utilisé pour référencer la section.typeIdrequired
translateDéfinit le champ à traduire. Fournissez label pour rendre l’étiquette traduisible.stringfacultatif
typeDéfinit le type d’entrée de l’élément d’HTML rendu. Par défaut : text.stringfacultatif
sortOrderDéfinit l’ordre de tri de la section. Les nombres élevés pousseront la section vers le bas de la page ; les nombres faibles pousseront la section vers le haut.floatfacultatif
showInDefaultDéfinit si la section s’affiche dans la portée de configuration par défaut. Spécifiez 1 pour afficher la section et 0 pour masquer la section.intfacultatif
showInStoreDéfinit si la section s’affiche au niveau du magasin. Spécifiez 1 pour afficher la section et 0 pour masquer la section.intfacultatif
showInWebsiteDéfinit si la section s’affiche au niveau du site web. Spécifiez 1 pour afficher la section et 0 pour masquer la section.intfacultatif
canRestoreDéfinit si la section peut être restaurée par défaut.intfacultatif
advancedObsolète depuis la version 10.0.2.boolfacultatif
extendsEn fournissant un identifiant d’une autre section, le contenu de ce noeud étend la section que vous avez référencée.stringfacultatif

Référence de noeud de section

Une balise <section> peut avoir les enfants suivants :

NoeudDescriptionType
labelDéfinit le libellé affiché dans l’interface frontale.string
classAjoute une classe CSS définie à l’élément d’HTML de section rendue.string
tabFait référence à l’onglet associé. Attend l’identifiant de l’onglet.typeTabId
header_cssNi utilisé ni évalué au moment de la rédaction de cet article.string
resourceFait référence à une ressource ACL afin de fournir des paramètres d’autorisation pour cette section.typeAclResourceId
groupDéfinissez un ou plusieurs sous-groupes.typeGroup
frontend_modelSpécifie un modèle front-end différent pour modifier le rendu et modifier la sortie.typeModel
includeUtilisé pour inclure d’autres fichiers compatibles system_include.xsd. Généralement utilisé pour structurer des fichiers system.xml volumineux.includeType

Exemple : créer une section et l’affecter à un onglet

Le fragment de code suivant illustre l’utilisation de base de la création d’une section.

<?xml version="1.0" ?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Config:etc/system_file.xsd">
    <system>
        <tab id="A_UNIQUE_ID" translate="label" class="a-custom-css-class-to-style-this-tab" sortOrder="10">
            <label>A meaningful label</label>
        </tab>

        <section id="A_UNIQUE_SECTION_ID" showInDefault="1" showInWebsite="0" showInStore="1" sortOrder="10" translate="label">
            <label>A meaningful section label</label>
            <tab>A_UNIQUE_ID</tab>
            <resource>VENDOR_MODULE::path_to_the_acl_resource</resource>
        </section>
    </system>
</config>

La section décrite ci-dessus définit l’ID A_UNIQUE_SECTION_ID, qui est visible dans la vue de configuration par défaut et dans un contexte de magasin. Le noeud label peut être traduit. La section est associée à l’onglet avec l’ID A_UNIQUE_ID. La section n'est accessible que par les utilisateurs disposant des autorisations définies dans l'ACL VENDOR_MODULE::path_to_the_acl_resource.

Groupes

La balise <group> sert à regrouper les champs.

Référence d’attribut de groupe

Une balise <group> peut avoir les attributs suivants :

AttributDescriptionTypeObligatoire
idDéfinit l’identifiant utilisé pour référencer le groupe.typeIdrequired
translateDéfinit les champs qui doivent être traduisibles. Fournissez label pour rendre l’étiquette traduisible. Plusieurs champs doivent être séparés par un espace.stringfacultatif
typeDéfinit le type d’entrée de l’élément d’HTML rendu. Par défaut : text.stringfacultatif
sortOrderDéfinit l’ordre de tri de la section. Les nombres élevés pousseront la section vers le bas de la page ; les nombres faibles pousseront la section vers le haut.floatfacultatif
showInDefaultDéfinit si le groupe est affiché dans la portée de configuration par défaut. Spécifiez 1 pour afficher le groupe et 0 pour le masquer.intfacultatif
showInStoreDéfinit si le groupe est affiché au niveau du magasin. Spécifiez 1 pour afficher le groupe et 0 pour le masquer.intfacultatif
showInWebsiteDéfinit si le groupe est affiché au niveau du site web. Spécifiez 1 pour afficher le groupe et 0 pour le masquer.intfacultatif
canRestoreDéfinit si le groupe peut être restauré par défaut.intfacultatif
advancedObsolète depuis la version 10.0.2.boolfacultatif
extendsEn fournissant l’identifiant d’un autre groupe, le contenu de ce noeud étend la section que vous avez référencée.stringfacultatif

Référence de noeud de groupe

Une balise <group> peut avoir les enfants suivants :

NoeudDescriptionType
labelDéfinit le libellé affiché dans l’interface frontale.string
fieldset_cssAjoute une ou plusieurs classes CSS à un jeu de champs de groupe.string
frontend_modelSpécifie un modèle front-end différent pour modifier le rendu et modifier la sortie.typeModel
clone_modelSpécifie un modèle donné pour cloner des champs.typeModel
clone_fieldsClonage des champs activé ou désactivé.int
help_urlNon extensible. Voir ci-dessous.typeUrl
more_urlNon extensible. Voir ci-dessous.typeUrl
demo_linkNon extensible. Voir ci-dessous.typeUrl
commentAjoute un commentaire sous le libellé du groupe. L'HTML <![CDATA[//]]> peut être appliqué.string
hide_in_single_store_modeSi le groupe doit être visible en mode de magasin unique. 1 masque le groupe ; 0 affiche le groupe.int
fieldDéfinissez un ou plusieurs champs qui doivent être disponibles dans ce groupe.field
groupDéfinissez un ou plusieurs sous-groupes.unbounded
dependsPeut être utilisé pour déclarer des dépendances sur d’autres champs. Est utilisé pour afficher des champs/groupes spécifiques uniquement lorsqu’un champ donné a une valeur de 1. Ce noeud attend une chaîne section/group/field.depends
attributeLes attributs personnalisés peuvent être utilisés par les modèles frontend. Généralement utilisé pour rendre un modèle front-end donné plus dynamique.attribute
includeUtilisé pour inclure d’autres fichiers compatibles system_include.xsd. Généralement utilisé pour structurer des fichiers system.xml volumineux.includeType
AVERTISSEMENT
Les noeuds more_url, demo_url et help_url sont définis par un modèle front-end PayPal utilisé une seule fois. Ces noeuds ne sont pas réutilisables.

Exemple : créer un groupe pour une section donnée

Le fragment de code suivant illustre l’utilisation de base de la création d’un groupe.

<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Config:etc/system_file.xsd">
    <system>
        <tab id="A_UNIQUE_ID" translate="label" class="a-custom-css-class-to-style-this-tab" sortOrder="10">
            <label>A meaningful label</label>
        </tab>

        <section id="A_UNIQUE_SECTION_ID" showInDefault="1" showInWebsite="0" showInStore="1" sortOrder="10" translate="label">
            <label>A meaningful section label</label>
            <tab>A_UNIQUE_ID</tab>
            <resource>VENDOR_MODULE::path_to_the_acl_resource</resource>

            <group id="A_UNIQUE_GROUP_ID" translate="label comment" sortOrder="10" showInDefault="1" showInWebsite="0" showInStore="1">
                <label>A meaningful group label</label>
                <comment>An additional comment helping users to understand the effect when configuring the fields defined in this group.</comment>
                <!-- Add your fields here. -->
            </group>
        </section>
    </system>
</config>

Le groupe décrit ci-dessus définit l’ID A_UNIQUE_GROUP_ID, qui est visible dans la vue de configuration par défaut et dans un contexte de magasin. Les balises label et comment sont toutes deux marquées comme traduisibles.

Champs

La balise <field>-est utilisée dans les balises <group>-pour définir des valeurs de configuration spécifiques.

Référence d’attribut de champ

Une balise <field> peut avoir les attributs suivants :

AttributDescriptionTypeObligatoire
idDéfinit l’identifiant utilisé pour référencer le champ.typeIdrequired
translateDéfinit les champs qui doivent être traduisibles. Fournissez label pour rendre l’étiquette traduisible. Plusieurs champs doivent être séparés par un espace.stringfacultatif
typeDéfinit le type d’entrée de l’élément d’HTML rendu. Par défaut : text.stringfacultatif
sortOrderDéfinit l’ordre de tri de la section. Les nombres élevés poussent la section vers le bas de la page ; les nombres faibles poussent la section vers le haut.floatfacultatif
showInDefaultDéfinit si le champ s’affiche dans la portée de configuration par défaut. Spécifiez 1 pour afficher le champ et 0 pour masquer le champ.intfacultatif
showInStoreDéfinit si le champ s’affiche au niveau du magasin. Spécifiez 1 pour afficher le champ et 0 pour masquer le champ.intfacultatif
showInWebsiteDéfinit si le champ s’affiche au niveau du site web. Spécifiez 1 pour afficher le champ et 0 pour masquer le champ.intfacultatif
canRestoreDéfinit si le champ peut être restauré par défaut.intfacultatif
advancedObsolète depuis la version 10.0.2.boolfacultatif
extendsEn fournissant l’identifiant d’un autre champ, le contenu de ce noeud étend la section que vous avez référencée.stringfacultatif