wordpressはデフォルトで梱包しているjQueryを読み込むので、書き方によってはうまく動作しないようです。
そこで管理画面はデフォルトのjQueryを読み込んで、それ以外のテンプレートでは適宜jsを読み込むような設定を下記のエントリーを参考にfunctions.phpに書き込みました。
とりあえずファイルを呼び出しているようなので問題ないのかなぁと...。
if (!is_admin()) {
function register_script(){
$dir = get_stylesheet_directory_uri();
wp_deregister_script('jquery');//デフォルトのjQueryは使わない
wp_register_script('jq', $dir.'/common/js/jquery-1.10.2.min.js');
wp_register_script('default', $dir.'/common/js/default.js');
wp_register_script('home', $dir.'/common/js/home.js');
wp_register_script('page', $dir.'/common/js/page.js');
}
function add_script() {
$dir = get_stylesheet_directory_uri();
register_script();
//全頁共通
wp_enqueue_script('jq');
wp_enqueue_script('default');
//homeテンプレートのみ
if (is_home()) {
wp_enqueue_script('home');
}
//pageテンプレートのみ
else if(is_page()) {
wp_enqueue_script('page');
}
}
add_action('get_header', 'add_script');
}
wp_deregister_script('jquery');を設定することでWPに梱包されたjQueryは使わない。
以下読み込むjsを設定する。
if文でテンプレート毎に読み込むスクリプトを切り分ける。
固定ページでページごとにさらに切り替える場合はページIDを設定すればよいみたい。
例:is_page(array(2,3,4)))