エンキューされたJavaScriptファイルの依存関係を連結および縮小する


8

を使用wp_enqueue_scriptしてJavaScriptファイルをテーマにロードしています。ただし、それに加えて、エンキューされたスクリプト(Gruntによって既に連結および縮小されている)の依存関係として、いくつかのjQueryファイルもロードしています。これが私のコードです:

add_action('wp_enqueue_scripts', function() {
    wp_enqueue_script( 'customscripts', get_template_directory_uri() . '/assets/js/main.min.js', array('jquery', 'jquery-form', 'json2', 'jquery-ui-autocomplete'), NULL, true );
});

依存関係配列の場合、これらのjQuery依存関係を連結および縮小するにはどうすればよいですか?私は自分のサイトをできるだけ速くロードしようとしています、そしてそれはロードする必要があるJSファイルが少ないほど良いです。また、(タグのasyncプロパティを使用して)それらを非同期でロードすることが可能であった場合、問題は解決します<script>

プラグインを使わずにやりたいのですが、必要に応じてプラグインを使います。

助けてくれてありがとう:)


3
サードパーティのJavaScriptファイルはそのままプラグインで登録/エンキューする必要があります。連結、変更、または別の名前ではありません。このように、同じサードパーティのjsを使用するプラグイン/テーマが複数ある場合、Wordpressは同じコードの複数のインスタンスをロードしません。この管理と連結を利用するには、キャッシュシステムと組み合わせてオンザフライで連結を行い、訪問ごとにファイルを連結しないようにする必要があります。この作品はここでの答えには多すぎると思います。W3 Total Cacheを見てください。このプラグインは、結果を連結、縮小、キャッシュし、非同期のjsファイルをロードします。
cybmeta 2014

@cybmetaが言うように、W3 Total Cacheはその役割を果たしますが、jsファイルの連結には注意してください。一部のスクリプトは、同じファイルに「一緒に」入る準備ができていません。ただし、W3 Total Cacheの変更はすべて元に戻すことができます。
Rangel R. Morais

ねえ、答えてくれてありがとう、W3 Total Cacheは連結などのためにかなりうまく機能しています。提案(と@cybmeta)に感謝します:)
Tom Oakley

ねえ、答えてくれてありがとう、申し訳ありませんでした。W3 Total Cacheは今のところこれで問題なく機能します。WordPressがなぜそれを行わないのかについてのあなたの説明は完全に理にかなっています。ありがとう!
Tom Oakley

1
このプラグインは、いくつかの理由のためにあなたがしたくない場合にもいいですか、必要W3トータルキャッシュwordpress.org/plugins/autoptimize
NickFMC

回答:


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.