Tôi đã tìm thấy một số bài đăng có cùng câu hỏi này, nhưng câu trả lời luôn chuyển sang một số chủ đề khác hoặc chúng không hoạt động cho nhu cầu của tôi.
Sau khi một nút được lưu, tôi muốn mô-đun tùy chỉnh của mình chèn một hàng vào một trong các bảng tùy chỉnh có chứa nid của nút mới. Khi hook_node_submit
được gọi, nid chưa tồn tại. hook_node_insert
không có nid, nhưng chỉ được gọi lần đầu tiên khi nút được lưu, nhưng tôi có khả năng cần phải thực hiện hành động mỗi khi nút được lưu.
Kế hoạch của tôi là tách chức năng của tôi thành phương pháp riêng và thực hiện cả hai hook, nhưng tôi đang cố gắng học cách làm mọi thứ đúng với Drupal và vì vậy tôi tự hỏi liệu có một hook thực sự phù hợp với yêu cầu của tôi không.
Có một hook được gọi mỗi khi một nút được lưu và được gọi là SAU khi lưu xong?
hook_node_submit
nhưng không hook_node_update
?
hook_node_insert
cũng như trong hook_node_update
.
hook_node_insert()
và hook_node_update()
là các móc chính xác cho điều này, hook_node_submit()
được gọi trong quá trình gửi biểu mẫu trước khi nút được lưu. Đừng quên bạn cần xóa bộ nhớ cache bất cứ khi nào bạn thêm / xóa hook
hook_node_insert
vàhook_node_update
(hành động mỗi khi một nút đang được lưu).