Khi phát triển các chủ đề và plugin, đôi khi cần phải thêm một số chức năng vào một số hook bằng cách sử dụng các câu lệnh có điều kiện.
Thí dụ:
function my_custom_function() {
if( is_home()) {
<---what should the function do--->
}
}
add_action( 'some_hook', 'my_custom_function' );
Theo hiểu biết của tôi, bất cứ khi nào có bất kỳ điều kiện nào khác ( is_home
trả về false), nội dung của hàm không được thực thi, tuy nhiên hàm được thực thi, mặc dù nó "trống". Điều này có nghĩa là một hàm trống được truyền vào hook. Đây là cách mà tất cả các ví dụ được hiển thị trong codex sử dụng các thẻ có điều kiện.
Tôi hiểu rằng điều này là an toàn để làm như vậy và nó sẽ không có tác động đáng kể đến thời gian tải (nếu có bất kỳ tác động nào đến thời gian tải).
Tôi đã suy nghĩ, cùng một đoạn mã, như ví dụ, có thể được viết như sau
if( is_home()) {
function my_custom_function() {
<---what the function should do--->
}
add_action( 'some_hook', 'my_custom_funtion' );
}
Điều này sẽ hoàn toàn bỏ qua mọi thứ nếu is_home
trả về false.
Tôi không phiền khi sử dụng bất kỳ phương pháp nào trong hai phương pháp này. Nhưng những gì tôi muốn biết, vì ví dụ đầu tiên được sử dụng rộng rãi, có bất kỳ tiêu chuẩn mã hóa nào nói rằng đây là phương pháp chính xác để sử dụng, hay đây là cách được ưu tiên theo các nhà phát triển wordpress, hoặc chỉ là sở thích cá nhân.