在 WordPress 中加載腳本(為 CSS 和 JS,下同)文件,大多數人的做法是直接在 header.php 文件中添加 link 標簽,或者把 link 標簽通過 wp_head 鉤子直接添加到 head 標簽里,這種做法是不符合官方規范的。
標準的腳本加載方式應該是使用 WordPress 官方提供的函數(后邊會說),統一標準有幾個好處,首先就是更加安全和利于管理,其次是更加的方便快捷,而且不僅主題能掛載腳本,插件也可以,并且還能管理腳本,并且調整掛載順序和位置和其它內容。
在哪個鉤子加載?
在調用加載腳本函數之前,我們首先要確定函數在哪個鉤子處執行,有四個常用的腳本加載鉤子,分別是 wp_enqueue_scripts(在前臺加載)、admin_enqueue_scripts(在后臺加載)、login_enqueue_scripts(在登錄頁加載)和 init(全局加載)。
最常用的應該是 wp_enqueue_scripts 了,掛載到這上面,腳本只在前臺加載。
加載 JavaScript 腳本
比如說我想在前臺加載一個 JS,是主題根目錄 JS 文件夾的 themes.js 文件。首先需要使用 wp_register_script() 函數把 JS 添加到腳本庫里邊(注冊腳本),然后再使用 wp_enqueue_script() 函數掛載腳本。
function Bing_enqueue_scripts(){ wp_register_script( 'themes_js', get_bloginfo( 'template_directory' ) . '/js/themes_js.js' );//注冊 ID 為 themes_js 的 JS 腳本 wp_enqueue_script( 'themes_js' );//掛載腳本}add_action( 'wp_enqueue_scripts', 'Bing_enqueue_scripts' );
加載 CSS 腳本
function Bing_enqueue_scripts(){ wp_register_style( 'style', get_bloginfo( 'template_directory' ) . '/style.css' ); wp_enqueue_style( 'style' );}add_action( 'wp_enqueue_scripts', 'Bing_enqueue_scripts' );
小結
本文只是非常簡單的講解了怎么加載腳本,合理的利用腳本排隊機制,可以讓程序變得靈活,也可以加快效率。