【Autoptimize】JavaScript・CSSファイルの読み込み位置を任意の場所に変更する方法

WordPressのAutoptimizeプラグインでは、JavaScript、CSSのファイルをそれぞれ最適化・結合し、一つのファイルとして読み込むことができます。

その結合したJavaScriptファイルは</body>タグの直前(設定で</head>タグお直前に変更可能)、CSSのファイルは<head>タグの直後で読み込みますが、今回は、それらの読み込み位置を任意の場所に変更する方法となります。

【Autoptimize】JavaScriptファイルの読み込み位置を変更する方法

Autoptimizeで結合したJavaScriptファイルは、プラグインの独自フックautoptimize_filter_js_replacetagを利用することで、読み込み位置を変更できます。

以下、フックの例となりfunction.phpに記述します。例では、HTML内に追加した任意のタグ<injectjs />を<script>タグに置換して、結合したJavaScriptファイルを読み込んでいます。

function my_js_replacetag($replacetag) {
        return array("<injectjs />","replace");
}
add_filter('autoptimize_filter_js_replacetag', 'my_js_replacetag');

autoptimize_filter_js_replacetagフックでは、指定したタグの直前・直後・置換のいずれかで、JavaScriptファイルを読み込む位置を設定できます。

それらの設定はフックのコールバック関数で返す配列で次のように指定します。

  • 配列の最初の要素にタグを指定(指定したタグが複数ある場合は、最初のタグに対して処理を行います)
  • 配列の2番目の要素に、"before" "after" "replace" のいずれかを指定(beforeは直前、afterは直後、replaceは置換)

【Autoptimize】CSSファイルの読み込み位置を変更する方法

Autoptimizeで結合したCSSファイルは、プラグインの独自フックautoptimize_filter_css_replacetagを利用することで、読み込み位置を変更できます。

以下、フックの例となりfunction.phpに記述します。例では、</head>タグの直前で結合したCSSファイルを読み込んでいます。

function my_css_replacetag($replacetag) {
	return array("</head>","before");
}
add_filter('autoptimize_filter_css_replacetag', 'my_css_replacetag');

autoptimize_filter_css_replacetagフックでは、指定したタグの直前・直後・置換のいずれかで、CSSファイルを読み込む位置を設定できます。

それらの設定はフックのコールバック関数で返す配列で次のように指定します。

  • 配列の最初の要素にタグを指定(指定したタグが複数ある場合は、最初のタグに対して処理を行います)
  • 配列の2番目の要素に、"before" "after" "replace" のいずれかを指定(beforeは直前、afterは直後、replaceは置換)

コメント投稿コメント投稿欄を開く

コメントは項目欄(*は必須項目)を入力し、「コメントを送信」ボタンをクリックしてください。 (メールアドレスは公開されることはありません。コメントの公開は承認制となります。)

また、多忙によりコメントには返信できない場合があります。

Twitterで返信する場合はこちらから。