1

WordPress loads jQuery.migrate automatically:

How can I disable it without plugins? I didn't find code in functions.php with enqueue.

It loads from /wp-includes. How can I disable it?

  • Very bad idea. WordPress core needs jQuery. – Frank P. Walentynowicz Jan 21 '18 at 10:48
  • on which page do you want to disable jQuery ? – mmm Jan 21 '18 at 10:49
  • @FrankP.Walentynowicz jQuery Migrate is not the whole of jQuery. It's a migration script that's not nested most times. – swissspidy Jan 21 '18 at 14:36
2

jQuery Migrate is nothing but a dependency of the jQuery script in WordPress, so one can simply remove that dependency.

The code for that is pretty straightforward:

function dequeue_jquery_migrate( $scripts ) {
    if ( ! is_admin() && ! empty( $scripts->registered['jquery'] ) ) {
        $scripts->registered['jquery']->deps = array_diff(
            $scripts->registered['jquery']->deps,
            [ 'jquery-migrate' ]
        );
    }
}
add_action( 'wp_default_scripts', 'dequeue_jquery_migrate' );

This will prevent the jQuery Migrate script from being loaded on the front end while keeping the jQuery script itself intact. It's still being loaded in the admin to not break anything there.

In case you don't want to put this in your own plugin or theme, you can use a plugin like jQuery Light that does this for you.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.