Câu trả lời muộn
Giải thích ngắn gọn
apply_filters()
tương tác với global $wp_filters
mảng. Về cơ bản, nó chỉ kiểm tra mảng nếu bộ lọc hiện tại (hoặc hook) có một hành động (/ hàm gọi lại) được đính kèm và sau đó gọi nó.
Giải thích dài
Khi bạn đính kèm một lệnh gọi lại / hành động vào bộ lọc hoặc móc, thì bạn chỉ cần thêm tên gọi lại vào mảng bộ lọc chung. Khi đó, trong mã (ví dụ: mẫu, tệp lõi hoặc tệp plugin) một lệnh gọi đến do_action()
hoặc apply_filters()
xảy ra, thì WordPress đã tìm kiếm trong mảng và gọi lệnh gọi lại. Điều duy nhất đặc biệt hơn với bộ lọc so với hook là nó trả về giá trị (để xử lý thêm) thay vì chỉ kích hoạt callback. Tóm lại: Hook là để chèn dữ liệu, trong khi bộ lọc là để sửa đổi dữ liệu.