La secuencia module.xml
tiene un impacto en app/etc/config.php
. Este archivo se actualiza cuando lo ejecuta, bin/magento module:enable Vendor_ModuleName
por lo que si ha agregado / cambiado secuencias, le sugiero que desactive su módulo y luego lo vuelva a habilitar. La actualización de su module.xml
archivo y borrar la memoria caché no es suficiente aquí, tendrá que hacer una completa disable
re- enable
ciclo para obtener Magento para ver cambios en la secuencia durante el desarrollo.
El orden de clasificación de los módulos en el config.php
archivo se usa para todas las demás cargas de archivos de configuración según el comentario de Anton aquí.
Las ubicaciones de código en ese comentario están un poco desactualizadas. Este es el código para la secuencia de clasificación https://github.com/magento/magento2/blob/2.0.2/lib/internal/Magento/Framework/Module/ModuleList/Loader.php#L131
Actualización 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>
que hace referencia a un recopilador de archivos de diseño de página en el mismo 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>
el que nos parece interesante pageLayoutFileSourceBaseSorted
todavía está en el mismo 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
hace la siguiente clasificación
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;
}
donde moduleList
se basa en lo Magento\Framework\Module\ModuleList
que a su vez utiliza el cargador mencionado anteriormente.