Stratégies de déploiement pour les fichiers de vue statiques
Lors du déploiement de fichiers de vue statique, vous pouvez choisir l’une des trois stratégies disponibles. Chacune d’elles fournit des résultats de déploiement optimaux pour différents cas d’utilisation :
Les sections suivantes décrivent les détails et les fonctionnalités de mise en œuvre de chaque stratégie.
Stratégie standard
Lorsque la stratégie Standard est utilisée, tous les fichiers de vue statiques de tous les packages sont déployés, c’est-à-dire traités par \Magento\Framework\App\View\Asset\Publisher
.
Pour plus d’informations, voir Déployer des fichiers de vue statiques.
Stratégie rapide
La stratégie rapide effectue les actions suivantes :
-
Pour chaque thème, un paramètre régional arbitraire est choisi et tous les fichiers pour ce paramètre régional sont déployés, comme dans la stratégie standard.
-
Pour tous les autres paramètres régionaux du thème :
- Les fichiers qui remplacent les paramètres régionaux déployés sont définis et déployés.
- Tous les autres fichiers sont considérés comme similaires pour tous les paramètres régionaux et sont copiés à partir du paramètre régional déployé.
Cette approche réduit le temps de déploiement requis pour plusieurs paramètres régionaux, bien que de nombreux fichiers soient dupliqués.
Stratégie compacte
La stratégie compacte évite la duplication des fichiers en stockant des fichiers similaires dans des sous-répertoires base
.
Pour le résultat le plus optimisé, trois portées pour les similitudes possibles sont attribuées : zone, thème et paramètre régional. Les sous-répertoires base
sont créés pour toutes les combinaisons de ces étendues.
Les fichiers sont déployés dans ces sous-répertoires selon les modèles suivants.
<area>/<theme>/<locale>
<area>/<theme>/default
<area>/Magento/base/<locale>
<area>/Magento/base/default
base/Magento/base/<locale>
base/Magento/base/default
Mappage des fichiers déployés
L’approche du déploiement utilisée dans la stratégie compacte signifie que les fichiers sont hérités des thèmes de base et des paramètres régionaux. Ces relations d’héritage sont stockées dans les fichiers de mappage pour chaque combinaison de zone, de thème et de paramètre régional. Il existe des fichiers de mappage distincts pour PHP et JS :
map.php
requirejs-map.js
Le fichier map.php
est utilisé par Magento\Framework\View\Asset\Repository
pour créer des URL correctes.
Le requirejs-map.js
est utilisé par le plug-in baseUrlResolver
pour RequireJS.
Exemple de map.php
:
return [
'Magento_Checkout::cvv.png' => [
'area' => 'frontend',
'theme' => 'Magento/luma',
'locale' => 'en_US',
],
'...' => [
'area' => '...',
'theme' => '...',
'locale' => '...'
]
];
Exemple de requirejs-map.js
:
require.config({
"config": {
"baseUrlInterceptor": {
"jquery.js": "../../../../base/Magento/base/en_US/"
}
}
});
Conseils pour les développeurs d’extensions
Pour créer des URL dans des fichiers d’affichage statiques, utilisez \Magento\Framework\View\Asset\Repository::createAsset()
.
N’utilisez pas de concaténations d’URL pour éviter tout problème en raison duquel les fichiers statiques sont introuvables et ne s’affichent pas lors du rendu de la page.