Câu trả lời:
Móc được gọi theo thứ tự
{system.weight}
. Trọng lượng thấp hơn đến sớm hơn trong quá trình gọi.Theo mặc định, các mô-đun được gán trọng số 0, do đó, gần như tất cả các móc trong hệ thống chạy theo thứ tự bảng chữ cái. Một số mô-đun sẽ điều chỉnh điều này trong các móc cài đặt để chúng chạy sớm hơn hoặc muộn hơn trong module_invoke_all
chức năng.
Xem thêm: Điều chỉnh trọng lượng mô-đun: những rủi ro và điều cần chú ý là gì?
Theo mặc định, trọng lượng mô-đun xác định vị trí của nó trong dòng để thực thi hàm hook_ *.
Bạn có thể thay đổi thứ tự mặc định của các mô-đun triển khai bằng hook_module_implements_alter . Một ví dụ nhỏ có thể được tìm thấy trong bài đọc thêm của hướng dẫn blog này .
Từ blog đó, một ví dụ thực hiện là:
function mymodule_module_implements_alter(&$module_list, $context){
if($context === "node_insert"){
$temp = $module_list['mymodule'];
// Removing the mymodule key/value
unset($module_list['mymodule']);
// Adding the mymodule key value as the last member in the list
$module_list['mymodule'] = $temp;
}
}
hook_module_implements_alter()
.