La séquence en module.xml
a un impact sur app/etc/config.php
. Ce fichier est mis à jour lorsque vous exécutez, bin/magento module:enable Vendor_ModuleName
donc si vous avez ajouté / modifié des séquences, je vous suggère de désactiver votre module, puis de le réactiver. Mise à jour de votre module.xml
fichier et la suppression du cache ne suffit pas ici, vous aurez besoin de faire un plein disable
re enable
programme pour le séchage Magento pour voir les changements de séquence au cours du développement.
L'ordre de tri des modules dans le config.php
fichier est ensuite utilisé pour tout autre chargement de fichier de configuration selon le commentaire d'Anton ici.
Les emplacements de code dans ce commentaire sont un peu obsolètes. Il s'agit du code pour le tri de séquence https://github.com/magento/magento2/blob/2.0.2/lib/internal/Magento/Framework/Module/ModuleList/Loader.php#L131
Mise à jour 2:
app / etc / di.xml
<type name="Magento\Framework\View\Model\Layout\Merge">
<arguments>
<argument name="fileSource" xsi:type="object">Magento\Framework\View\Layout\File\Collector\Aggregated\Proxy</argument>
<argument name="pageLayoutFileSource" xsi:type="object">pageLayoutFileCollectorAggregated</argument>
<argument name="cache" xsi:type="object">Magento\Framework\App\Cache\Type\Layout</argument>
</arguments>
</type>
qui fait référence à un collecteur de fichiers de mise en page dans le même di.xml
<virtualType name="pageLayoutFileCollectorAggregated" type="Magento\Framework\View\Layout\File\Collector\Aggregated">
<arguments>
<argument name="baseFiles" xsi:type="object">pageLayoutFileSourceBaseSorted</argument>
<argument name="themeFiles" xsi:type="object">pageLayoutFileSourceThemeSorted</argument>
<argument name="overrideBaseFiles" xsi:type="object">pageLayoutFileSourceOverrideBaseSorted</argument>
<argument name="overrideThemeFiles" xsi:type="object">pageLayoutFileSourceOverrideThemeSorted</argument>
</arguments>
</virtualType>
celui qui nous intéresse est pageLayoutFileSourceBaseSorted
toujours dans le même di.xml
<virtualType name="pageLayoutFileSourceBaseSorted" type="Magento\Framework\View\File\Collector\Decorator\ModuleDependency">
<arguments>
<argument name="subject" xsi:type="object">pageLayoutFileSourceBaseFiltered</argument>
</arguments>
</virtualType>
Magento\Framework\View\File\Collector\Decorator\ModuleDependency
fait le tri suivant
protected function getModulePriority($moduleName)
{
if ($this->orderedModules === null) {
$this->orderedModules = $this->moduleList->getNames();
}
$result = array_search($moduleName, $this->orderedModules);
// Assume unknown modules have the same priority, distinctive from known modules
if ($result === false) {
return -1;
}
return $result;
}
où moduleList
est basé sur Magento\Framework\Module\ModuleList
qui à son tour utilise le chargeur mentionné ci-dessus.