Добавить в modulename.install
:
Drupal 7
/**
* Implements hook_install().
*/
function modulename_install() {
db_update('system')
->fields(array('weight' => 123))
->condition('name', 'modulename')
->execute();
}
Drupal 6
/**
* Implements hook_install()
*/
function modulename_install() {
db_query("UPDATE {system} SET weight = 123 WHERE name = 'modulename'");
}
Написанное актуально для
Drupal 7
Комментарии
было бы неплохо написать тут, как используется вес модуля в друпале. =)
хуки выполняются в порядке веса модулей
По какой причине hook_url_inbound_alter более "легкого" модуля(с отрицательным значением веса -20) может выполняться позднее чем hook_url_inbound_alter модуля с весом 0 ?
hook_module_implements_alter
Спасибо, не знаю это подсказка к решению или очень конкретный ответ на вопрос, но выяснил что по факту hook_module_implements_alter эти модули не используют(могут ли другие модули их двигать, не себя а конкретно их?), а сортировка модулей по факту выполняется по модулю числа веса без учета знака, баг? новейшая версия Drupal7 стабильная.
Это только в 1-ый раз, когда модуля не было, сработает.
Отключение – включение модуля эту функцию не запустит – нужно сначала делать "удаление" модуля после его отключения, и потом заново включать.
Для D8: module_set_weight('module_name', 1001);
Добавить комментарий