jQuery3.x系に乗り換えようとfuctions.phpにwp_enqueue_scriptを記述しました。
特に何も指定してないのにbody終了タグの前に行ってしまったのです。
プラグインかテーマに原因があると考えて色々探しましたよ、ほんと。
スポンサーリンク
wp_enqueue_script( $handle, $src, $deps, $ver, $in_footer );
最後の引数である$in_footerをtrueにしたならば分かりますが、falseなのになぜかtrueと同じ振る舞いになってしまうという問題です。
プラグイン中のwp_enqueue_script関数で第一引数に'jquery'が含まれているものを探すと見つかりました。
function jqlb_js() { if(is_admin() || is_feed()){return;} wp_enqueue_script('jquery', '', array(), false, true); wp_enqueue_script('wp-jquery-lightbox-swipe', plugins_url(JQLB_TOUCH_SCRIPT, __FILE__), Array('jquery'), '1.4.6', true); wp_enqueue_script('wp-jquery-lightbox', plugins_url(JQLB_SCRIPT, __FILE__), Array('jquery'), '1.4.6', true);
上記はWP jQuery Lightboxの記述の抜粋です。
wp_enqueue_script関数の最後の引数がtrueになってしまっています。
これをfalseに書き換えて更新するだけで解決できました。
でもアップデートされたら、また書き換えないと問題が起きそうですよね。
functions.phpからどうにかできないのでしょうか・・・
jQueryのスクリプトタグが指定してないのになぜかフッターへ行ってしまう現象
スポンサーリンク
Leave a Comment