エロサイトの作り方

2013年11月から勉強しながらエロサイトを作っています。

WordPressのjQueryにバージョン指定したりフッターで読み込むようにする方法

header.phpに書く

wp_deregister_script('jquery');
wp_enqueue_script('jquery', 'http://code.jquery.com/jquery-1.11.1.min.js', array(), '1.11.1');

既に登録されている'jquery'を削除して、追加する。

ネットでよく見るやり方。しかし、なぜheader.phpに書くのか……

function.phpに書く

wp_deregister_script('jquery');
wp_enqueue_script('jquery', 'http://code.jquery.com/jquery-1.11.1.min.js', array(), '1.11.1');

同じ記述はfunction.phpに書いても動く。

こっちの方がまだしっくりくる。

ヘッダーで一番最初に読み込むスクリプトにしたい

それでも<head>内でどの順番に読まれるのか定まらず、jQueryに依存しているプラグインjQueryが見つからないと怒ったりするので困る。

add_filter('wp_enqueue_scripts', 'enqueue_my_scripts', 0);
function enqueue_my_scripts() {
  wp_enqueue_script('jquery', 'http://code.jquery.com/jquery-1.11.1.min.js', array(), '1.11.1');
}

そんな時はフィルターを使って処理を割り込ませればいいらしい。

このやり方だとwp_deregister_script()が要らなくなる。

というか、こっちが正しい指定の仕方のような気がする。

フッターで読み込むようにする

add_filter('wp_enqueue_scripts', 'enqueue_my_scripts', 0);
function enqueue_my_scripts() {
  wp_enqueue_script('jquery', 'http://code.jquery.com/jquery-1.11.1.min.js', array(), '1.11.1', true);
}

wp_enqueue_script()の5番目の引数をtrueにすればいい。

ちなみに、フッターの最後に読ませたい場合は、add_filter()の3番目の数字を高いもの(デフォルトが10なのでそれ以上)にしておけばよさそう。

参考