Jqueryをサイトのフッターに移動したいのですが、うまくいきません。私は以下のコードでそれを試しました。
ご覧のとおり、他にもいくつかスクリプトがあり、それらはフッターに正しくロードされます。 jqueryだけは動作しません。
//This adds our JavaScript Files
function wel_adding_scripts() {
wp_deregister_script('jquery');
wp_register_script('jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js', '', '2.1.1', true);
wp_enqueue_script( 'jquery');
wp_register_script('jquery.mixitup', get_template_directory_uri() . 'js/jquery.mixitup.min.js','','1.1', true);
wp_enqueue_script('jquery.mixitup');
wp_register_script('headroom', get_template_directory_uri() . 'js/headroom.min.js','','1.1', true);
wp_enqueue_script('headroom');
}
add_action( 'wp_enqueue_scripts', 'wel_adding_scripts' );
ヘッダー内のいずれかのスクリプトがjQueryを必要とする場合は、フッター用にエンキューされるように変更されているかどうかにかかわらず、それがヘッダーにバンプされます。
そのため、フッターのためにキューに入れられるように変更することは理にかなっていますが、多くのスクリプトが行われているときにうまくいくことはめったにありません。
別のパラメータですでに登録されているハンドルを登録またはエンキューしようとした場合、新しいパラメータは無視されます。代わりに、wp_deregister_script()を使用して、新しいパラメータでスクリプトを再度登録してください。
最初にjqueryの登録を解除し、再度登録する必要がありますが、空の文字列がdeps
パラメータの代わりに入れるべきものではないため、注意してください。 ITは空の配列であるべきです。
このような:
wp_register_script('jquery',
'http://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js',
array() , '2.1.1', true);
修正:私はいつも正しいやり方でやっている。今、私は見つけた、そのjqueryはthemes header.phpファイルで登録解除されました。私はそれを削除しました、そしてそれは今働きます。