Saya sedang mengembangkan satu modul khusus dan saya ingin menambah berat modul saat modul dipasang.
Bagaimana saya bisa mencapai ini? Kalau tidak, apakah ada yang tahu di meja mana berat modul disimpan?
Saya sedang mengembangkan satu modul khusus dan saya ingin menambah berat modul saat modul dipasang.
Bagaimana saya bisa mencapai ini? Kalau tidak, apakah ada yang tahu di meja mana berat modul disimpan?
Jawaban:
Gunakan hook_module_implements_alter()daripada mengubah bobot modul.
Contoh implementasi dari 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()(sebenarnya terjadi pada saya, saya pikir dengan salah satu modul i18n).
Ada API untuk ini sekarang:
module_set_weight('your_module_name', 10);
Anda juga dapat menerapkan pengait seperti yang dikatakan Ivan Jaros, yang memungkinkan kontrol lebih halus (mis. Pertama untuk satu kait, terakhir untuk yang lain, setelah modul khusus untuk ketiga). Tetapi bobot modul juga harus bekerja.
Jika Anda menggunakan impor / ekspor konfigurasi, Anda dapat mengubah berat modul dalam core.extension.ymlfile, nomor setelah nama modul adalah berat.
Anda dapat menggunakan modul Berat modul:
Kadang-kadang kita perlu memodifikasi urutan eksekusi modul, dan beberapa orang dapat menulis kode yang mengeksekusi kueri untuk memodifikasi bobot modul dalam tabel sistem, seseorang mungkin langsung ke klien SQL favoritnya dan memodifikasi catatan secara langsung. Modul ini menyediakan antarmuka untuk menyusun ulang bobot modul.
Pengungkapan: Saya adalah pengelola Modul Berat modul .