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