這個外掛並未在最新的 3 個 WordPress 主要版本上進行測試。開發者可能不再對這個外掛進行維護或提供技術支援,並可能會與更新版本的 WordPress 產生使用上的相容性問題。

Inline JavaScript in Head

描述

CAUTION: This plugin is now deprecated! The successor plugin is Embed JavaScript File Content. The new plugin is rebuild from scratch and more rock solid: It respects order and position of scripts and extra scripts added via wp_add_inline_script or wp_localize_script don’t get lost. Give it a try!

In some cases you cannot wait for a JavaScript file to load, even if it is placed early in the <head> section of your template. You can benefit from better performance, if you place the JavaScript code directly inside a <script> tag into the header. This is where this plugin comes in: It provides a filter inline_javascript_in_head_handles, which takes JavaScript handles, dequeues those scripts and echos their code content inline into the head section instead of linking them via a script tag.

Please beware that placing lots of JavaScript code inline in the <head> section can be critical! First you lose caching benefits and second the document size can increase easily. A general rule of thumb is that you should only consider JavaScript files for inline placement, which are critical and which have a file size lower than ~500 Bytes.

Example

add_action( 'wp_enqueue_scripts', 'my_scripts' );
function my_scripts() {
    // Some critical script is enqueued
    wp_enqueue_script( 'js-detection', get_template_directory_uri() . '/js/js-detection.js' );
}

/**
 * Define JavaScript handles to be echoed inline in the html head section.
 */
add_filter( 'inline_javascript_in_head_handles', 'my_inline_javascript_in_head_handles', -20 );
function my_inline_javascript_in_head_handles( $handles ) {
    $scripts = [ 'js-detection' ];

    return array_merge( $handles, $scripts );
}

安裝

  1. Upload inline-javascript-in-head.zip to the /wp-content/plugins/ directory.
  2. Activate the plugin through the ‘Plugins’ menu in WordPress.
  3. Use the inline_javascript_in_head_handles filter in your theme or plugin.
  4. You’re done!

評價

2020年1月23日 1 reply
Slowed down the website and deactivating the plugin appears not to reverse the moving of the javascript to the head. Complete restore of website to resolve.
閱讀全部1個評價

貢獻者及開發者

“Inline JavaScript in Head” 是一個開源的軟體。以下的人對這個外掛作出了貢獻。

貢獻者

將 Inline JavaScript in Head 外掛本地化為台灣繁體中文版。

對開發相關資訊感興趣?

任何人均可瀏覽程式碼、查看 SVN 存放庫,或透過 RSS 訂閱開發記錄

修改日誌

1.2.0

  • CAUTION: Last update! This plugin is now deprecated (see description section)
  • Bugfix: Some scripts could have gotten lost under certain conditions.

1.1.2

  • readme.txt code appearance screwed up, now hopefully fixed.

1.1.1

  • readme.txt update

1.1

  • Added filter inline_javascript_in_head_wrap_try_catch, which can add add a try catch wrapper around the JavaScript code.

1.0

  • First release