Dlaczego istnieje ciągłe powiadomienie,
JQMIGRATE: Migracja jest zainstalowana, wersja 1.4.0
wskazuje to load-scripts.php
w mojej konsoli, kiedy zaktualizowałem motyw do WordPress 4.5 i jak można go usunąć?
To nie jest błąd, ale zawsze jest obecny w mojej konsoli i naprawdę nie rozumiem, o co chodzi. Czy powinienem coś zaktualizować lub wprowadzić zmiany w kodzie?
Może mam trochę OCD, ale zwykle podczas inspekcji witryny lubię widzieć błędy i prawdziwe powiadomienia wskazujące na problem w mojej konsoli ...
/wp-admin/js/jquery/jquery-migrate.js
a/wp-admin/js/jquery/jquery-migrate.min.js
Odpowiedzi:
WordPress używa skryptu migracyjnego jQuery, aby zapewnić zgodność wsteczną dla wszystkich wtyczek i motywów, których możesz używać, które używają funkcji usuniętych z nowszych wersji jQuery.
Wydaje się, że wraz z wydaniem WordPress 4.5 zaktualizowali wersję migracji jQuery z wersji 1.2.1 do wersji 1.4.0 - Szybkie skanowanie kodu ujawnia, że wersja 1.4.0 rejestruje, że skrypt jest ładowany niezależnie od tego, czy
migrateMute
opcja jest ustawiona zarówno w wersji nieskompresowanej, jak i zminimalizowanej.Jedynym sposobem na usunięcie powiadomienia jest upewnienie się, że wszystkie wtyczki / kod motywu nie są uzależnione od żadnej starej funkcji jQuery, a następnie usunięcie skryptu migracji. Istnieje wtyczka , aby to zrobić, ale jest to dość prosta metoda, którą można po prostu umieścić w pliku funkcji motywu lub podobnym:
Należy pamiętać, że nie jest to uważane za najlepszą praktykę w tworzeniu WordPress i moim zdaniem skryptu migracji nie należy usuwać tylko ze względu na utrzymanie konsoli programisty w czystości.
źródło
Możesz zmienić tekst komunikatu w dzienniku na pusty,
jquery-migrate.min.js
ale nie zostanie on zachowany podczas podstawowej aktualizacji.Alternatywą jest dodanie do funkcji kopiowania / filtrowania funkcji
console.log
tuż przed załadowaniem skryptu migracji i nakazanie ignorowania komunikatów rejestrowania zawierających „Migrate is installed
”. W ten sposób zachowane zostaną również inne ostrzeżenia Migrate:Rezultatem jest jeden wiersz skryptu HTML dodany zarówno do frontendu, jak i backendu, który osiąga pożądany efekt (zapobiega zainstalowanej wiadomości).
źródło
Tylko mały test tutaj.
Zajrzałem do jquery-migrate.js i zauważyłem tę część:
więc przetestowałem następujące z nowo
wp_add_inline_script()
wprowadzonym w wersji 4.5:To zmieni:
do:
Więc tak naprawdę nie zapobiega całej produkcji konsoli, jak ta część w
jquery-migrate.js
:źródło
Rozwiązanie:
dodaj to do functions.php:
Działa, gdy
jquery-migrate
jest wywoływany ze standardowym hakiem (który wyprowadza<link rel=stylesheet....>
), a nieload-scripts.php
zbiorczo (jak w panelu administracyjnym).źródło
Miałem ten sam problem, i okazało się, po prostu trzeba ustawić
SCRIPT_DEBUG
sięfalse
w twojejwp-config.php
. Mam nadzieję, że to komuś pomożeźródło
Jak wspomniano wcześniej przez Andy WordPress używa skryptu migracyjnego jQuery, aby zapewnić kompatybilność wsteczną i dlatego jest domyślnie ładowany automatycznie.
Oto bezpieczny sposób na usunięcie modułu JQuery Migrate, a tym samym pozbycie się irytującego powiadomienia JQMIGRATE przy jednoczesnym przyspieszeniu wczytywania strony po stronie klienta. Po prostu skopiuj / wklej ten kod do pliku functions.php i gotowe:
Więcej szczegółów
Aby uzyskać więcej informacji na temat powodu używania funkcji statycznej, przeczytaj mój artykuł tutaj:
►► https://en.guydumais.digital/disable-jquery-migrate-in-wordpress/
źródło
add_filter
gdy jest to właściwie akcja.