目錄
鑰匙要點
使用快速代碼
>在WordPress中啟動腳本和样式的目的是什麼?它有助於防止主題或插件可能使用的不同腳本和样式之間的衝突。通過入學,您是在告訴WordPress何時加載腳本/樣式,加載腳本/樣式以及它依賴的其他腳本/樣式。
>如何在WordPress中加入腳本?
>
是的,是的,您可以在WordPress Styles中使用WordPress Styles On WordPress Styles使用wp_enqueue_style()函數。此功能與WP_ENQUEUE_SCRIPT()相似,但是它用於樣式表,而不是腳本。
>為什麼在啟動腳本或樣式時指定依賴項很重要?
指定依賴項確保您的腳本確保您的腳本或樣式以正確的順序加載。如果您的腳本取決於另一個腳本(例如jQuery),則WordPress將確保在您的腳本之前加載jQuery。使用WP_DEQUEUE_SCRIPT()或WP_DEQUEUE_STYLE()函數的WordPress中的腳本或樣式。如果您想停止加載腳本或樣式,這很有用。使用“ admin_enqueue_scripts”動作鉤的區域。這與“ wp_enqueue_scripts'掛鉤相似,但它用於管理區域而不是前端。
>我可以有條件地輔助腳本和样式嗎?例如,如果要查看某個頁面,則可以使用is_page()函數僅在腳本或樣式中使用腳本。這對於性能很有用,因為它可以防止不必要的腳本和样式被加載。
首頁 CMS教程 &#&按 WordPress中的腳本和样式

WordPress中的腳本和样式

Feb 15, 2025 pm 01:18 PM

WordPress中的腳本和样式

鑰匙要點

    WordPress中的
  • 啟用腳本和样式對於保持性能和防止不同腳本和样式之間的衝突至關重要。添加腳本的推薦方法是使用admin_enqueue_script鉤子,將處理程序前綴以避免衝突並確保腳本始終加載。
  • >可以使用WP_Deregister_style函數刪除引起錯誤或衝突的不必要腳本。在解決問題時,這在調試模式中特別有用。
  • >
  • >使用短代碼通常需要將腳本注入頁面。這可以通過在the_content過濾器上註冊回調並測試是否包含短碼來實現這一點。但是,該解決方案可能會在高負載網站上存在性能問題。一個更複雜的解決方案涉及使用作曲家加載類並在帖子內容中註冊短碼。
  • 在開發WordPress插件和主題一段時間後,您開始越來越多地思考主題性能以及對客戶造成的問題。這些問題之一是入圍腳本和样式。在本文中,我們將介紹針對不同用例的起點腳本和最佳實踐的基礎知識。您可以檢查本文以獲取有關管理WordPress資產的初學者概述。

>入圍腳本和样式

WordPress中的腳本和样式>如果您需要一些CSS或JavaScript代碼要注入網站的某些頁面,我們傾向於將它們添加到同一標記文件中,或者使用直接URL添加它們。

但是,這不是添加腳本的推薦方法,並且緩存插件不會優化和緩存您的資產以提高網站性能。我們需要使用Admin_enqueue_scripts鉤。

> wp_enqueue_script方法的第一個參數是腳本處理程序名稱,我們應該始終前綴處理程序以避免任何衝突,並確保我們的腳本始終加載。
// ...
<script type="text/javascript">
    // some JS code
</script>

<style type="text/css">
    // some CSS code
</style>
//...

<script type="text/javascript" src="<?= plugins_url('assets/js/main.js') ?>"></script>
登入後複製
登入後複製
當前的解決方案不是完美的,我們的腳本都包含在每個後端頁面中。我們可以使用傳遞給回調函數的$掛接變量來測試特定頁面。 >

>現在,我們的腳本僅包含在設置和新的帖子頁面中。我們只能在用戶創建一個新頁面時才能使用我們的樣式。 >
add_action( 'admin_enqueue_scripts', function($hook) {
    $pluginPrefix = "my-prefix";
    wp_enqueue_script( "{$pluginPrefix}main-js", plugins_url('assets/js/main.js'), ['jquery'] );
} );
登入後複製
登入後複製

>刪除不必要的腳本

>大多數開發人員不在乎在需要時起腳本的啟動,這就是為什麼我們總是會遇到意外的錯誤和奇怪的造型問題的原因。當注意到腳本引發錯誤或引起衝突時,您可以在添加自己的腳本之前將其刪除,這通常在調試模式中很有用。

>
// ...
<script type="text/javascript">
    // some JS code
</script>

<style type="text/css">
    // some CSS code
</style>
//...

<script type="text/javascript" src="<?= plugins_url('assets/js/main.js') ?>"></script>
登入後複製
登入後複製

使用快速代碼

大多數插件和主題都提供了一組與網站交互的快捷代碼,有時它們需要將腳本注入頁面。可悲的是,我們無法像以前在後端那樣測試前頁面。

>

實現此目的的一種簡單方法是在the_content過濾器上註冊回調,並測試它是否包含您的短碼。如果它返回是,您可以加入您的腳本,否則什麼都不做。

>
add_action( 'admin_enqueue_scripts', function($hook) {
    $pluginPrefix = "my-prefix";
    wp_enqueue_script( "{$pluginPrefix}main-js", plugins_url('assets/js/main.js'), ['jquery'] );
} );
登入後複製
登入後複製

上面的代碼效果很好,並且只會為包含快捷代碼的帖子中提起我們的腳本。但是,該解決方案在高負載網站上存在一些嚴重的性能問題。我們將為此問題創建一個更複雜的解決方案。

>

如果您還沒有使用作曲家來加載課程,我建議您開始這樣做。我們的插件composer.json文件看起來如下:

>
add_action( 'admin_enqueue_scripts', function($hook) {
    if ( !in_array($hook, array("options-general.php", "post-new.php")) )
        return;

    $pluginPrefix = "my-prefix";
    wp_enqueue_script( "{$pluginPrefix}main-js", plugins_url('assets/js/main.js'), ['jquery'] );
} );
登入後複製

src/shertcodes/helloshortcode.php類保存我們的短碼定義。

add_action( 'admin_enqueue_scripts', function($hook) {
    if ( $hook == "post-new.php" && isset($_GET['post_type']) && $_GET['post_type'] == "page" )
    {
        $pluginPrefix = "my-prefix";
        wp_enqueue_script( "{$pluginPrefix}main-js", plugins_url('assets/js/main.js'), ['jquery'] );
    }
} );
登入後複製

運行方法將返回我們的快捷代碼的HTML標記,並在使用快捷代碼時將加載的靜態屬性設置為true。 >>

>當然,我們可以避免將此代碼放入主插件文件中,但是我們將保持簡單且可讀的內容。

$短代碼變量包含可用的快捷代碼列表。第一個循環將註冊我們的短代碼,並將運行方法成為處理程序。接下來,我們將使用WP_FOOTER鉤在關閉身體標籤之前將我們的快捷代碼腳本勾勒出來。
add_action( 'admin_enqueue_scripts', function($hook) {
    $unautorized_styles = [
        'script1',
        'another-script'
    ];

    foreach ( $unautorized_styles as $handle )
    {
        wp_deregister_style( $handle );
    }

    // enqueue my scripts
} );
登入後複製

>您現在可以創建一個包含我們的短碼的新頁面,並檢查我們的腳本是否正確加載。

>

結論

這篇簡短的文章是有關如何提起插件和主題腳本的摘要,也是避免將它們加載到網站上的每個頁面中的最佳方法。如果您有任何疑問或評論,請在下面發布它們,我會盡力回答它們!

經常詢問有關在WordPress中起義腳本和样式的問題(常見問題解答)

>在WordPress中啟動腳本和样式的目的是什麼?它有助於防止主題或插件可能使用的不同腳本和样式之間的衝突。通過入學,您是在告訴WordPress何時加載腳本/樣式,加載腳本/樣式以及它依賴的其他腳本/樣式。

>

>如何在WordPress中加入腳本?

>

>在WordPress中加入腳本,您需要使用wp_enqueue_script()函數。此功能至少需要兩個參數:句柄(腳本的唯一名稱)和SRC(腳本的URL)。您還可以指定其他參數,例如依賴項,版本以及是否將腳本加載到頁腳中。

>

> wp_enqueue_script()和wp_register_script()?在WordPress上註冊腳本,但是有一個關鍵區別。 wp_register_script()僅註冊腳本,並且不加入它。這意味著腳本將不會打印,除非以後使用wp_enqueue_script()拼寫。另一方面,WP_ENQUEUE_SCRIPT()寄存器併升級腳本,這意味著它將在HTML中打印。

我可以在WordPress中加入樣式嗎?

是的,是的,您可以在WordPress Styles中使用WordPress Styles On WordPress Styles使用wp_enqueue_style()函數。此功能與WP_ENQUEUE_SCRIPT()相似,但是它用於樣式表,而不是腳本。

什麼是什麼'wp_enque_scripts的動作鉤?您的腳本和样式。當WordPress即將在HTML中打印腳本和样式時,此鉤被稱為。通過掛接,您可以確保在適當的時間出現腳本和样式。

>

>為什麼在啟動腳本或樣式時指定依賴項很重要?

>

指定依賴項確保您的腳本確保您的腳本或樣式以正確的順序加載。如果您的腳本取決於另一個腳本(例如jQuery),則WordPress將確保在您的腳本之前加載jQuery。使用WP_DEQUEUE_SCRIPT()或WP_DEQUEUE_STYLE()函數的WordPress中的腳本或樣式。如果您想停止加載腳本或樣式,這很有用。使用“ admin_enqueue_scripts”動作鉤的區域。這與“ wp_enqueue_scripts'掛鉤相似,但它用於管理區域而不是前端。

>

>什麼是'wp_print_scripts的動作鉤? Hook是一種較舊的鉤子,用於加入腳本。但是,不建議再使用此鉤子,因為它可能導致腳本加載順序的問題。您應該使用“ wp_enqueue_scripts”掛鉤。

>我可以有條件地輔助腳本和样式嗎?例如,如果要查看某個頁面,則可以使用is_page()函數僅在腳本或樣式中使用腳本。這對於性能很有用,因為它可以防止不必要的腳本和样式被加載。

以上是WordPress中的腳本和样式的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

如何開始WordPress博客:初學者的分步指南 如何開始WordPress博客:初學者的分步指南 Apr 17, 2025 am 08:25 AM

博客是人們在網上表達觀點、意見和見解的理想平台。許多新手渴望建立自己的網站,卻因擔心技術障礙或成本問題而猶豫不決。然而,隨著平台不斷發展以滿足初學者的能力和需求,現在開始變得比以往任何時候都更容易。 本文將逐步指導您如何建立一個WordPress博客,從主題選擇到使用插件提升安全性和性能,助您輕鬆創建自己的網站。 選擇博客主題和方向 在購買域名或註冊主機之前,最好先確定您計劃涵蓋的主題。個人網站可以圍繞旅行、烹飪、產品評論、音樂或任何激發您興趣的愛好展開。專注於您真正感興趣的領域可以鼓勵持續寫作

wordpress文章列表怎麼調 wordpress文章列表怎麼調 Apr 20, 2025 am 10:48 AM

有四種方法可以調整 WordPress 文章列表:使用主題選項、使用插件(如 Post Types Order、WP Post List、Boxy Stuff)、使用代碼(在 functions.php 文件中添加設置)或直接修改 WordPress 數據庫。

如何在父分類的存檔頁面上顯示子分類 如何在父分類的存檔頁面上顯示子分類 Apr 19, 2025 pm 11:54 PM

您想了解如何在父分類存檔頁面上顯示子分類嗎?在自定義分類存檔頁面時,您可能需要執行此操作,以使其對訪問者更有用。在本文中,我們將向您展示如何在父分類存檔頁面上輕鬆顯示子分類。為什麼在父分類存檔頁面上顯示子分類?通過在父分類存檔頁面上顯示所有子分類,您可以使其不那麼通用,對訪問者更有用。例如,如果您運行一個關於書籍的WordPress博客,並且有一個名為“主題”的分類法,那麼您可以添加“小說”、“非小說”等子分類法,以便您的讀者可以

如何在 WordPress 中獲取登錄用戶信息以獲得個性化結果 如何在 WordPress 中獲取登錄用戶信息以獲得個性化結果 Apr 19, 2025 pm 11:57 PM

最近,我們向您展示瞭如何通過允許用戶將自己喜歡的帖子保存在個性化庫中來為用戶創建個性化體驗。您可以通過在某些地方(即歡迎屏幕)使用他們的名字,將個性化結果提升到另一個水平。幸運的是,WordPress使獲取登錄用戶的信息變得非常容易。在本文中,我們將向您展示如何檢索與當前登錄用戶相關的信息。我們將利用get_currentuserinfo(); 功能。這可以在主題中的任何地方使用(頁眉、頁腳、側邊欄、頁面模板等)。為了使其工作,用戶必須登錄。因此我們需要使用

對於初學者來說,WordPress容易嗎? 對於初學者來說,WordPress容易嗎? Apr 03, 2025 am 12:02 AM

WordPress對初學者來說容易上手。 1.登錄後台後,用戶界面直觀,簡潔的儀表板提供所有必要功能鏈接。 2.基本操作包括創建和編輯內容,所見即所得的編輯器簡化了內容創建。 3.初學者可以通過插件和主題擴展網站功能,學習曲線存在但可以通過實踐掌握。

如何在 WordPress 中按帖子過期日期對帖子進行排序 如何在 WordPress 中按帖子過期日期對帖子進行排序 Apr 19, 2025 pm 11:48 PM

過去,我們分享過如何使用PostExpirator插件使WordPress中的帖子過期。好吧,在創建活動列表網站時,我們發現這個插件非常有用。我們可以輕鬆刪除過期的活動列表。其次,多虧了這個插件,按帖子過期日期對帖子進行排序也非常容易。在本文中,我們將向您展示如何在WordPress中按帖子過期日期對帖子進行排序。更新了代碼以反映插件中更改自定義字段名稱的更改。感謝Tajim在評論中讓我們知道。在我們的特定項目中,我們將事件作為自定義帖子類型。現在

如何在 WordPress 中顯示查詢數量和頁面加載時間 如何在 WordPress 中顯示查詢數量和頁面加載時間 Apr 19, 2025 pm 11:51 PM

我們的一位用戶詢問其他網站如何在頁腳中顯示查詢數量和頁面加載時間。您經常會在網站的頁腳中看到這一點,它可能會顯示類似以下內容:“1.248秒內64個查詢”。在本文中,我們將向您展示如何在WordPress中顯示查詢數量和頁面加載時間。只需將以下代碼粘貼到主題文件中您喜歡的任何位置(例如footer.php)。 queriesin

如何使用 IFTTT 自動化 WordPress 和社交媒體(及更多) 如何使用 IFTTT 自動化 WordPress 和社交媒體(及更多) Apr 18, 2025 am 11:27 AM

您是否正在尋找自動化 WordPress 網站和社交媒體帳戶的方法? 通過自動化,您將能夠在 Facebook、Twitter、LinkedIn、Instagram 等平台上自動分享您的 WordPress 博客文章或更新。 在本文中,我們將向您展示如何使用 IFTTT、Zapier 和 Uncanny Automator 輕鬆實現 WordPress 和社交媒體的自動化。 為什麼要自動化 WordPress 和社交媒體? 自動化您的WordPre

See all articles