Почему есть постоянное уведомление,
JQMIGRATE: Миграция установлена, версия 1.4.0
на что указывает load-scripts.php
моя консоль, когда я обновляю свою тему до WordPress 4.5, и как ее можно удалить?
Это не ошибка, но она всегда присутствует в моей консоли, и я действительно не понимаю, какой в этом смысл. Должен ли я что-то обновить или внести некоторые изменения в мой код?
Может быть, у меня есть немного OCD, но обычно, когда я осматриваю сайт, мне нравится видеть ошибки и реальные уведомления, указывающие на проблему в моей консоли ...
/wp-admin/js/jquery/jquery-migrate.js
/wp-admin/js/jquery/jquery-migrate.min.js
Ответы:
WordPress использует сценарий переноса jQuery для обеспечения обратной совместимости с любыми плагинами или темами, которые вы можете использовать, которые используют функции, удаленные из более новых версий jQuery.
С выпуском WordPress 4.5 кажется, что они обновили версию jQuery, мигрировавшую с v1.2.1 до v1.4.0. Быстрая проверка кода показывает, что v1.4.0 регистрирует, что скрипт загружается независимо от того,
migrateMute
опция установлена и в несжатом, и в минимизированном вариантах.Единственный способ удалить уведомление - убедиться, что все ваши плагины / код темы не зависят от какой-либо старой функциональности jQuery, а затем удалить сценарий переноса. Для этого есть плагин , но это довольно простой метод, который можно просто поместить в файл функций вашей темы или аналогичный:
Обратите внимание, что это не считается наилучшей практикой для разработки на WordPress, и, по моему мнению, сценарий переноса не следует удалять только для поддержания чистоты консоли разработчика.
источник
Вы можете изменить текст сообщения журнала на пустой,
jquery-migrate.min.js
но это не будет сохранено при обновлении ядра.Альтернативой является добавление копии функции passthrough / filter
console.log
непосредственно перед загрузкой сценария переноса и указание игнорировать сообщения регистрации, содержащие 'Migrate is installed
'. Выполнение этого таким образом сохранит и другие предупреждения Migrate:Результатом является одна строка HTML-скрипта, добавленная как во внешний, так и во внутренний интерфейсы, которая достигает желаемого эффекта (предотвращает установку сообщения).
источник
Просто небольшой тест здесь.
Я заглянул в jquery-migrate.js и заметил эту часть:
поэтому я протестировал следующее с нововведением
wp_add_inline_script()
, представленным в версии 4.5:Это изменится:
чтобы:
Так что на самом деле это не мешает выводу всей консоли, как эта часть в
jquery-migrate.js
:источник
Решение:
добавьте это в functions.php:
Он работает, когда
jquery-migrate
вызывается со стандартным хуком (который выводит<link rel=stylesheet....>
), а не сload-scripts.php
массовым (как в админ-панели).источник
Если бы та же проблема, и узнал , что вы просто нужно установить ,
SCRIPT_DEBUG
чтобыfalse
в вашейwp-config.php
. Надеюсь, это поможет кому-тоисточник
Как уже упоминалось ранее, Энди WordPress использует скрипт миграции jQuery для обеспечения обратной совместимости, и поэтому он автоматически загружается по умолчанию.
Вот безопасный способ удалить модуль JQuery Migrate и, таким образом, избавиться от надоедливого уведомления JQMIGRATE, ускоряя загрузку вашей страницы на стороне клиента. Просто скопируйте / вставьте этот код в файл functions.php, и все готово:
Подробнее
Чтобы узнать больше о причине использования статической функции, прочитайте мою статью здесь:
►► https://en.guydumais.digital/disable-jquery-migrate-in-wordpress/
источник
add_filter
когда это на самом деле действие.