Description
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 );
}
Installation
- Upload
inline-javascript-in-head.zip
to the/wp-content/plugins/
directory. - Activate the plugin through the ‘Plugins’ menu in WordPress.
- Use the
inline_javascript_in_head_handles
filter in your theme or plugin. - You’re done!
Reviews
Contributors & Developers
“Inline JavaScript in Head” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “Inline JavaScript in Head” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
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