Mengapa ada pemberitahuan konstan,
JQMIGRATE: Migrasi diinstal, versi 1.4.0
yang menunjuk ke load-scripts.php
konsol saya ketika saya memperbarui tema saya ke WordPress 4.5, dan bagaimana cara menghapusnya?
Ini bukan kesalahan, tapi selalu ada di konsol saya, dan saya benar-benar tidak mengerti apa gunanya. Haruskah saya memperbarui sesuatu, atau membuat beberapa perubahan pada kode saya?
Mungkin saya memiliki sedikit OCD, tetapi biasanya ketika saya memeriksa situs tersebut, saya suka melihat kesalahan dan pemberitahuan nyata yang mengarah ke masalah di konsol saya ...
/wp-admin/js/jquery/jquery-migrate.js
and/wp-admin/js/jquery/jquery-migrate.min.js
Jawaban:
WordPress menggunakan skrip migrasi jQuery untuk memastikan kompatibilitas mundur untuk setiap plugin atau tema yang mungkin Anda gunakan yang menggunakan fungsionalitas yang dihapus dari versi jQuery yang lebih baru.
Dengan rilis WordPress 4.5, tampaknya mereka telah memutakhirkan versi jQuery yang bermigrasi dari v1.2.1 ke v1.4.0 - Setelah pemindaian cepat melalui kode tersebut akan terungkap bahwa v1.4.0 mencatat bahwa skrip dimuat tanpa memperhatikan apakah atau tidak
migrateMute
opsi diatur dan di kedua versi terkompresi dan diperkecil.Satu-satunya cara untuk menghapus pemberitahuan adalah memastikan bahwa semua plugin / kode tema Anda tidak bergantung pada fungsionalitas jQuery lama, dan kemudian menghapus skrip migrasi. Ada plugin di luar sana untuk melakukan ini, tetapi ini adalah metode yang cukup sederhana yang hanya dapat ditempatkan di file fungsi tema Anda atau serupa:
Harap perhatikan bahwa ini tidak dianggap praktik terbaik untuk pengembangan WordPress dan menurut saya skrip migrasi tidak boleh dihapus hanya demi menjaga konsol pengembang tetap bersih.
sumber
Anda bisa mengubah teks pesan log menjadi kosong
jquery-migrate.min.js
tetapi ini tidak akan dipertahankan pada pembaruan inti.Alternatifnya adalah menambahkan salinan fungsi passthrough / filter
console.log
ke tepat sebelum skrip migrasi dimuat, dan katakan itu untuk mengabaikan logging logging pesan yang berisi 'Migrate is installed
'. Melakukannya dengan cara ini akan mempertahankan peringatan Migrasi lainnya juga:Hasilnya adalah satu baris skrip HTML yang ditambahkan ke frontend dan backend yang mencapai efek yang diinginkan (mencegah pesan yang diinstal.)
sumber
Hanya sedikit tes di sini.
Saya mengintip ke jquery-migrate.js dan memperhatikan bagian ini:
jadi saya menguji yang berikut dengan yang baru
wp_add_inline_script()
, diperkenalkan di versi 4.5:Ini akan berubah:
untuk:
Jadi itu tidak benar-benar mencegah semua output konsol, seperti bagian ini di
jquery-migrate.js
:sumber
Larutan:
tambahkan ini ke functions.php:
Ia bekerja ketika
jquery-migrate
dipanggil dengan kait standar (yang keluaran<link rel=stylesheet....>
) dan tidak denganload-scripts.php
dalam jumlah besar (seperti di admin-dashboard).sumber
Memiliki masalah yang sama, dan menemukan Anda hanya perlu set
SCRIPT_DEBUG
kefalse
dalam Andawp-config.php
. Semoga ini bisa membantu seseorangsumber
Seperti yang disebutkan sebelumnya oleh Andy WordPress menggunakan skrip migrasi jQuery untuk memastikan kompatibilitas ke belakang dan inilah mengapa ini secara otomatis dimuat secara default.
Berikut adalah cara yang aman untuk menghapus modul JQuery Migrate dan dengan demikian menyingkirkan pemberitahuan JQMIGRATE yang mengganggu sambil mempercepat pemuatan halaman Anda di sisi klien. Cukup salin / tempel kode ini di file functions.php Anda dan Anda selesai:
Keterangan lebih lanjut
Untuk mendapatkan detail lebih lanjut tentang alasan saya menggunakan fungsi statis, baca artikel saya di sini:
►► https://en.guydumais.digital/disable-jquery-migrate-in-wordpress/
sumber
add_filter
itu sebenarnya sebuah tindakan.