特定のスクリプトを特定のページでの実行から除外する必要があります。私はこのコードを試してみましたが、うまくいきません - ページを調べてもスクリプトがまだ私のページのフッターに読み込まれています。
これがfunctions.phpの私のコードです。
add_action( 'wp_enqueue_scripts', 'my_deregister_javascript', 100 );
function my_deregister_javascript() {
if ( !is_page('my-page') ) {
wp_deregister_script( 'isotope' );
wp_deregister_script( 'anystretch' );
wp_deregister_script( 'imgliquid' );
wp_deregister_script( 'retina' );
wp_deregister_script( 'menutron' );
wp_deregister_script( 'imagesloaded' );
wp_deregister_script( 'myfunctions' );
}
}
何が足りないの?ありがとうございます。
あなたのコードには基本的な間違いがあります。次のコード
if ( !is_page('my-page') ) {
そのページででなければ、 スクリプトの登録解除 を意味します。 php演算子 を見てください。
! -> Not !$x True if $x is not true
また、最初にこれらのスクリプトをエンキューするときに、この特定のページを除外しないでください。
add_action( 'wp_enqueue_scripts', 'my_register_javascript', 100 );
function my_register_javascript() {
if ( !is_page('my-page') ) {
// ENQUEUE/REGISTER SCRIPTS
}
}
それははるかにクリーンでより効率的です。スクリプトを登録して再度登録を解除する意味がわかりません。スクリプトを最初から条件付きで登録する
最後に私のフロントページだけがjqueryを読み込まないようにしました。
// remove jquery from ONLY the front page
add_action( 'wp_enqueue_scripts', 'my_deregister_javascript' );
function my_deregister_javascript() {
if ( is_home('front-page') ) {
wp_deregister_script( 'jquery' );
}
}
注: is_page 最初の質問から、フロントページまたはhomeを引数に使用する場合は機能しません(is_homeを使用する必要があります(1時間かかる))。
それらのスクリプトをエンキューしてからデキューするのではなく、特定のページのスクリプトのみをエンキューすることを試みます。
function wpse158453_enqueue_scripts() {
if(!is_page('my-page')) {
wp_enqueue_script( 'jquery', '//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js' );
wp_enqueue_script( 'jquery-ui', '//ajax.googleapis.com/ajax/libs/jqueryui/1.11.1/jquery-ui.min.js' );
wp_enqueue_script( 'jquery-custom', get_template_directory_uri() . '/admin/js/custom.js' );
}
}
add_action( 'wp_enqueue_scripts', 'wpse158453_enqueue_scripts' );
それ以外の場合は、wp_deregister_scriptではなく wp_dequeue_script を試すことができます。
それが役立つことを願っています。
//Remove jquery only on front page
add_action( 'wp_enqueue_scripts', 'my_deregister_javascript' );
function my_deregister_javascript() {
if ( is_front_page() ) {
wp_deregister_script( 'jquery' );
}
}
このスクリプトをあなたのテーマに追加してください function.php あなたがクエリを解決するでしょう