Estoy desarrollando un módulo personalizado y quiero aumentar el peso de mi módulo cuando esté instalado.
¿Cómo puedo conseguir esto? De lo contrario, ¿alguien sabe en qué tabla se almacena el peso del módulo?
Estoy desarrollando un módulo personalizado y quiero aumentar el peso de mi módulo cuando esté instalado.
¿Cómo puedo conseguir esto? De lo contrario, ¿alguien sabe en qué tabla se almacena el peso del módulo?
Respuestas:
Use en hook_module_implements_alter()
lugar de cambiar el peso del módulo.
Implementación de muestra de content_translation.module :
function content_translation_module_implements_alter(&$implementations, $hook) {
switch ($hook) {
// Move our hook_entity_type_alter() implementation to the end of the list.
case 'entity_type_alter':
$group = $implementations['content_translation'];
unset($implementations['content_translation']);
$implementations['content_translation'] = $group;
break;
// Move our hook_entity_bundle_info_alter() implementation to the top of the
// list, so that any other hook implementation can rely on bundles being
// correctly marked as translatable.
case 'entity_bundle_info_alter':
$group = $implementations['content_translation'];
$implementations = [
'content_translation' => $group,
] + $implementations;
break;
}
}
hook_module_implements_alter()
(en realidad me pasó a mí, creo que con uno de los módulos i18n).
Hay una API para esto ahora:
module_set_weight('your_module_name', 10);
También puede implementar el gancho como dijo Ivan Jaros, lo que permite un control más detallado (por ejemplo, primero para un gancho, último para otro, después de un módulo específico para el tercero). Pero el peso del módulo también debería funcionar.
Si usa configuraciones de importación / exportación, puede cambiar el peso del módulo en el core.extension.yml
archivo, número después del nombre del módulo.
Puede usar el módulo de peso Módulos :
A veces necesitamos modificar el orden de ejecución de los módulos, y algunas personas pueden escribir un código que ejecute la consulta para modificar el peso de un módulo en la tabla del sistema, alguien puede ir directamente a su cliente SQL favorito y modificar el registro directamente. Este módulo proporciona una interfaz para reordenar el peso de los módulos.
Divulgación: soy el mantenedor del módulo Módulos Peso .