Importer les paramètres de configuration
Lorsque vous configurez un système de production à l’aide de Commerce 2.2 modèle de déploiement de pipeline, vous devez importer les paramètres de configuration de config.php
et env.php
dans la base de données.
Ces paramètres incluent les chemins et valeurs de configuration, les sites web, les magasins, les vues de magasin et les thèmes.
Après avoir importé des sites web, des boutiques, des vues de boutique et des thèmes, vous pouvez créer des attributs de produit et les appliquer aux sites web, aux boutiques et aux vues de boutique, sur le système d’exploitation.
bin/magento app:config:import
ne traite pas la configuration stockée dans les variables d’environnement.Commande d'import
Sur votre système d’exploitation, exécutez la commande suivante pour importer les données des fichiers de configuration (config.php
et env.php
) dans la base de données :
bin/magento app:config:import [-n, --no-interaction]
Utilisez l’indicateur de [-n, --no-interaction]
facultatif pour importer des données sans interaction.
Si vous saisissez bin/magento app:config:import
sans l’indicateur facultatif, vous devez confirmer les modifications.
Par exemple, si le fichier de configuration contient un nouveau site web et un nouveau magasin, le message suivant s’affiche :
These Websites will be created: New Website
These Groups will be created: New Store
Do you want to continue [yes/no]?
Pour poursuivre l’importation, saisissez yes
.
Si les fichiers de configuration de déploiement contiennent des données à importer, un message similaire au suivant s’affiche :
Start import:
Some information about importing
Si les fichiers de configuration de déploiement ne contiennent aucune donnée à importer, un message similaire au suivant s’affiche :
Start import:
Nothing to import
Ce que nous importons
Les sections suivantes décrivent en détail les données que nous importons.
Configuration du système
Commerce utilise directement les valeurs du tableau system
dans les fichiers config.php
ou env.php
au lieu de les importer dans la base de données, car elles nécessitent des actions de pré-traitement et de post-traitement.
Par exemple, la valeur du chemin de configuration web/secure/base_url
doit être validée avec les modèles principaux.
Modèles principaux
Les modèles principaux constituent le mécanisme de traitement des modifications apportées à la configuration du système.
Vous définissez les modules principaux dans <module_name>/adminhtml/system.xml
.
Tous les modèles principaux doivent étendre la classe Magento\Framework\App\Config\Value
.
Lorsque nous importons des modèles principaux, nous n’enregistrons pas les valeurs de configuration.
Configuration des sites web, des magasins et des groupes de magasins
Nous importons les types de configurations suivants.
(Ces configurations se trouvent sous le tableau scopes
dans config.php
.)
websites
: configuration liée aux sites webgroups
: stocke la configuration associéestores
: configuration liée aux vues du magasin
Les configurations précédentes peuvent être importées dans les modes suivants :
create
:config.php
contient de nouvelles entités (websites
,groups
,stores
) qui sont absentes de l’environnement de productionupdate
:config.php
contient des entités (websites
,groups
,stores
) différentes de l’environnement de productiondelete
:config.php
ne contient pas d’entités (websites
,groups
,stores
) présentes dans l’environnement de production
Configuration du thème
La configuration des thèmes inclut tous les thèmes enregistrés dans votre système Commerce ; les données proviennent directement du tableau de la base de données theme
. (La configuration du thème se trouve dans le tableau themes
dans config.php
.)
Structure des données de thème
La clé du tableau est le chemin d’accès complet au thème : area
+ theme path
Par exemple, frontend/Magento/luma
.frontend
est une zone et Magento/luma
est un chemin d’accès au thème.
La valeur du tableau représente les données sur le thème : code, titre, chemin, ID parent
Exemple complet :
'frontend/Magento/luma' =>
array (
'parent_id' => 'Magento/blank',
'theme_path' => 'Magento/luma',
'theme_title' => 'Magento Luma',
'is_featured' => '0',
'area' => 'frontend',
'type' => '0',
'code' => 'Magento/luma',
),
- Enregistrement du thème. Si des données de thème sont définies dans
config.php
mais que le code source du thème n’est pas présent dans le système de fichiers, le thème est ignoré (c’est-à-dire qu’il n’est pas enregistré). - Suppression du thème. Si un thème n’est pas présent dans
config.php
mais que le code source est présent sur le système de fichiers, le thème n’est pas supprimé.