- 工信部備案號 滇ICP備05000110號-1
- 滇公安備案 滇53010302000111
- 增值電信業務經營許可證 B1.B2-20181647、滇B1.B2-20190004
- 云南互聯網協會理事單位
- 安全聯盟認證網站身份V標記
- 域名注冊服務機構許可:滇D3-20230001
- 代理域名注冊服務機構:新網數碼
越來越多的人在使用wordpress搭建網站,今天藍隊網絡給大家介紹一下wordpress開發中重要的一個概念,就是鉤子。
鉤?(Hook)的作用是標識位置,當程序運行到這個位置的時候,會調用執行這個鉤子對應的函數(Hook Function)
WordPress的Action Hook與Filter Hook
WordPress中的 Hook 有兩種,分別是”Action Hook“及”Filter Hook“,我們剛才舉例的 wp_head 及wp_footer 都是屬於 Action Hook。不過,一開始你可以先把這兩種 Hook 看成是一樣的東西,只是 Filter 多了一點點不同的特色,接著說明。
Action Hook
WP核心 (或主題、插件)在做它們該做的事時,如果執行到有埋 action hook 的程式碼 (即是 do_action 語法) 時,會去找尋對應到的 hook functions,進而執行這些 hook functions(即那些透過 add_action() 來加入的 hook functions),藉此完成定制功能。WP核心并不期待 Action Hook functions 會有回傳值,所以這里的 hook function 只被視為一個”獨立切出來運作的功能“。
WP核心做它該做的事,你做你想做的事,做完就各自結束。
Filter Hook
跟 Action Hook 一樣,WP核心 (或主題、插件)在做它們該做的事時,如果執行到有埋 filter hook 的程?碼 (即是apply_filters語法) 時,就會去找尋對應的 hook functions ,進而執行這些 hook functions(即那些透過add_filter() 來加入的 hook functions ),藉此完成定制功能。與 Action Hook 不同之處是,所有”鈎上“ Filter Hook 的 hook functions 通常都會接收到參數,而WP核心會期待你拿到它提供的參數,并做完你想做的事后,要回傳(return)一個值,讓WP核心再利用你回傳的值來接著完成它該做的事。
透過你的干涉,修改了WP核心丟給你的參數,WP核心再接著拿你改過的參數,繼續完成它該做的事,此動作就像”過濾?的動作,因而得名 filter。
提交成功!非常感謝您的反饋,我們會繼續努力做到更好!
這條文檔是否有幫助解決問題?
售前咨詢
售后咨詢
備案咨詢
二維碼
TOP