基本的にこれはまさに私がやっていることです:
functions.php でこれを行うと、機能しません
//functions.php
add_action('init', 'override_jquery');
function override_jquery() {
if( !is_admin()){
wp_deregister_script('jquery');
wp_enqueue_script( 'nashgraphics_jquery_library', get_template_directory_uri() . '/bootstrap/js/jquery-1.9.0.min.js');
}
}
これをプラグインとして実行すると動作します
//my_plugin.php
add_action('wp_enqueue_scripts', 'override_jquery');
function override_jquery() {
$plugin_location=WP_PLUGIN_URL.'/'.str_replace(basename( __FILE__),"",plugin_basename(__FILE__));
if( !is_admin()){
wp_deregister_script('jquery');
wp_enqueue_script( 'nashgraphics_jquery_library', $plugin_location . 'fancybox/library/jquery-1.9.0.min.js');
}
}
私の問題は、異なるバージョンのjqueryを必要とする独自のテーマを開発しようとしているため、functions.phpを介してJQueryライブラリをオーバーライドする必要があることです
プラグインを無効にすると深刻な問題になるため、jquery ライブラリをプラグインとしてオーバーライドしないでください。
プラグインとして実行すると機能するのに、functions.php で実行しているときに jquery ライブラリが含まれていない理由を説明してもらえますか?