Tôi đang phát triển một mô-đun tùy chỉnh và tôi muốn tăng trọng lượng mô-đun của mình khi mô-đun được cài đặt.
Làm thế nào tôi có thể đạt được điều này? Mặt khác, có ai biết trọng lượng của mô-đun được lưu trữ trong bảng nào không?
Tôi đang phát triển một mô-đun tùy chỉnh và tôi muốn tăng trọng lượng mô-đun của mình khi mô-đun được cài đặt.
Làm thế nào tôi có thể đạt được điều này? Mặt khác, có ai biết trọng lượng của mô-đun được lưu trữ trong bảng nào không?
Câu trả lời:
Sử dụng hook_module_implements_alter()
thay vì thay đổi trọng lượng mô-đun.
Mẫu triển khai từ 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()
(thực tế đã xảy ra với tôi, tôi nghĩ với một trong các mô-đun i18n).
Hiện tại đã có API cho việc này:
module_set_weight('your_module_name', 10);
Bạn cũng có thể thực hiện hook như Ivan Jaros đã nói, cho phép kiểm soát chi tiết hơn (ví dụ đầu tiên cho một hook, cuối cùng cho một hook khác, sau một mô-đun cụ thể cho thứ ba). Nhưng trọng lượng mô-đun nên làm việc quá.
Nếu bạn sử dụng cấu hình nhập / xuất, bạn có thể thay đổi trọng lượng của mô-đun trong core.extension.yml
tệp, số sau tên của mô-đun là trọng số.
Bạn có thể sử dụng mô-đun trọng lượng Mô-đun:
Đôi khi chúng ta cần sửa đổi thứ tự thực hiện mô-đun và một số người có thể viết mã thực thi truy vấn để sửa đổi trọng số của mô-đun trong bảng hệ thống, một số người có thể đi thẳng đến máy khách SQL yêu thích của mình và sửa đổi bản ghi trực tiếp. Mô-đun này cung cấp một giao diện để sắp xếp lại trọng lượng mô-đun.
Tiết lộ: Tôi là người duy trì mô- đun Trọng lượng mô- đun .