该插件尚未通过WordPress的最新3个主要版本进行测试。 当与较新版本的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日
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” 是开源软件。 以下人员对此插件做出了贡献。

贡献者

更新日志

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