問題描述
我現在使用 WordPress 3.1.4 。我感到困惑我使用哪個 (哪個鉤子)
- 註冊和/或排隊
- 指令碼和樣式
- 在前面和 back-ends?
問題:
- 哪些是正確的鉤子使用?
init中的所有前端註冊/入隊指令碼/樣式?- 為什麼沒有
admin_print_styles-{xxx}?
最佳解決方案
為什麼正確註冊和排隊事宜
- 它應該是在時間 – 早於指令碼/風格輸出到頁面,否則太晚了;
- 它應該是有條件的 – 否則你正在載入你不需要它的東西,並導致效能和功能問題,因此你需要 WP 環境載入到後期階段。
過程的三個階段
- 註冊 – 這解釋了關於指令碼/樣式的 WP 細節,並使其儲存該資訊;
- (通常集中在一個
wp_enqueue_*()呼叫中註冊) – 這告訴 WP 根據其設定 (依賴關係,頁首/頁尾載入) 將指令碼/樣式新增到佇列中。 - 列印 – 當 WP 處理佇列時,會發生這種情況,嘗試載入某些特定於其自身的內容,或者當您使用
wp_print_*()功能顯式地執行此操作時。
Front-end 功能和掛鉤結構
-
wp_head()-
wp_head- (1)
wp_enqueue_scripts()wp_enqueue_scriptsÄ,Â,Ť這是你需要的 - (8)
wp_print_styles() - (9)
wp_print_head_scripts()
- (1)
-
-
wp_footer()-
wp_footer- (10)
wp_print_footer_scripts()
- (10)
-
它更深入,但這對於重點來說很簡單和足夠好:
-
wp_enqueue_scripts是前端註冊和排隊指令碼和樣式的最合適的鉤子,它是專門為此而設計的; -
init與此無關,它將會起作用,但是 – 過去法典建議僅使用它是不正確的; - 在
wp_print_footer_scripts()呼叫之前,您可以隨時隨地排列腳註 (而不是樣式); -
wp_print_*鉤子不適用於暫存器/佇列,它們是輸出已經發生時的程式碼點。它們適用於手動/自定義指令碼/樣式輸出。
管理員呢?
那麼呢,這個功能呢更復雜,精巧和巢狀。
- 對於初學者只需使用
admin_enqueue_scripts鉤子 (它透過$hook_suffix全域性條件的東西) 為所有,它將做很好的大多數情況下; - 當你需要一些複雜的東西時,可以透過
admin-header.php進行查詢,從中挖出適當的鉤子。
登入怎麼辦?
有一個名為 login_enqueue_scripts 的特定鉤子。
參考文獻
注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。