Cum să oprești manual jQuery.migrate în WordPress
WordPress încarcă automat jQuery.migrate:
Cum pot să-l dezactivez fără plugin-uri? Nu am găsit cod în functions.php cu enqueue
.
Se încarcă din /wp-includes
. Cum pot să-l opresc?

jQuery Migrate nu este altceva decât o dependință a scriptului jQuery în WordPress, așa că se poate elimina această dependință cu ușurință.
Codul pentru aceasta este destul de simplu:
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' );
Aceasta va împiedica încărcarea scriptului jQuery Migrate în partea de front-end, păstrând în același timp scriptul jQuery intact. Acesta va continua să se încarce în administrare pentru a nu afecta funcționalitățile.
În cazul în care nu doriți să adăugați acest cod în propriul plugin sau temă, puteți utiliza un plugin precum jQuery Light care face acest lucru pentru dumneavoastră.

WordPress permite "anularea înregistrării" unui plugin, folosind un proces similar cu cel menționat de @swissspidy, dar cu mai puțin cod.
În orice funcție în care încărcați pluginurile, adăugați această linie:
wp_deregister_script('jquery-migrate');
Aceasta presupune că jQuery Migrate este încărcat cu identificatorul jquery-migrate
, care este valoarea implicită în WordPress.
Iată un exemplu al funcției mele de încărcare cu acțiunea WP:
function my_theme_enqueue_styles_and_scripts() {
wp_enqueue_style('my-theme-styles', 'dist/styles.css');
wp_deregister_script('jquery-migrate');
wp_enqueue_script('my-theme-scripts', 'dist/scripts.js');
}
add_action('wp_enqueue_scripts', 'my_theme_enqueue_styles_and_scripts', 99);

Presupun că funcționează OK, dar vei întâlni scenariul în care WP scrie scripturi pe pagină, ajunge la jQuery și descoperă că nu poate satisface toate dependențele sale pentru că nu știe ce este jquery-migrate, care este o dependință a jQuery. La prima vedere, asta înseamnă că nici măcar jquery-core nu va fi afișat, ceea ce cred că încă doream. Aceasta este problema pe care codul mai complicat al lui swissspidy o rezolva.
