WordPress поставляется с набором скриптов по умолчанию, которые вы можете использовать для работы своих тем и плагинов. jQuery - это обычно используемый скрипт, как и TinyMCE. Но что, если вы хотите интегрировать свой собственный скрипт jQuery?

Недавно мы показали, как правильно добавлять скрипты jQuery в вашу установку. WordPress использует тот же внутренний механизм, что означает, что мы можем удалить или даже заменить поставленные в очередь скрипты нашими собственными скриптами.

В этом уроке я покажу вам, как разрегистрировать Существующие скрипты, так что вы можете добавить свои собственные скрипты. Мы также познакомим вас с различными обстоятельствами, в которых вы можете это сделать, и расскажете, почему некоторые люди считают, что удаление внутреннего сценария является безответственным.

Зачем изменять внутренние скрипты: случай jQuery?

Существует ряд сценариев, в которых вы можете захотеть изменить загруженные внутренние скрипты. Например, в настоящее время WordPress по умолчанию использует jQuery 1.11.3, однако последняя версия на самом деле - 1.12.3 или 2.2.3. Если вы пишете приложение, основанное на расширенной функциональности jQuery, вам может потребоваться более новая версия скрипта.

Я также столкнулся с ситуацией, когда старый плагин вызывал проблемы с устаревшими скриптами. В этом случае клиент полагался на плагин, но загруженный скрипт фактически не использовался. Мы думали, что удалить его было лучшим вариантом, но вместо того, чтобы напрямую изменять код плагина, который предотвратил бы будущие обновления, мы решили использовать новый плагин для изменения загруженных скриптов.

Важно отметить, что, хотя есть законные случаи, когда вы можете удалить и изменить скрипты, загружаемые ядром WordPress и другими плагинами или темами, вы всегда должны дважды подумать и действовать с осторожностью.

Если вы принудительно установите новую версию jQuery на свой Веб-сайт, например, это может вызвать непредвиденные проблемы совместимости. Вы всегда должны тестировать WordPress локально, если это возможно, и избегать изменения/удаления скриптов без крайней необходимости.

Должны ли мы удалить внутренние коды из WordPress

Как редактировать скрипты

Благодаря магии WordPress вы можете изменить любой скрипт, встроенный в вашу тему, или даже создать плагин, который сделает это за вас. Это означает, что вам не нужно (и не будет!) Изменять исходный код, который загружает некорректный скрипт. Позвольте мне привести несколько примеров.

Допустим, ваша тема использует скрипт, который вы хотите удалить или заменить. В этом случае вы можете создать дочернюю тему и загрузить необходимый код.

Если вы хотите изменить скрипты, входящие в плагины, вы можете внести необходимые изменения в свою дочернюю тему или в новый плагин. В зависимости от масштаба проекта я рекомендую создать плагин специально для изменения скриптов других плагинов.

Если вы хотите отредактировать базовый скрипт WordPress, лучше всего делать это в написанном вами продукте. Если вы работаете с плагином, вы должны сделать это на нем, если это тема, вы должны сделать это на файле functions.php.

«Отмена регистрации» скриптов

Если вы еще не ознакомились с предыдущим руководством о том, как правильно добавить скрипт в WordPress, вы можете сделать это сейчас и вернуться. Мы видели, что метод добавления скриптов в WordPress заключается в их регистрации. Их удаление - это, конечно, обратный процесс, что означает «снятие с учета» или, скорее, снятие с учета. Это делается с помощью функции wp_deregister_script () следующим образом:

wp_deregister_script ('jquery');

Единственный параметр, который вам здесь нужен, - это пространство имен скрипта. Пространство имен указывается при сохранении скрипта, и вы можете прочитать в моем сообщении о добавлении jQuery в WordPress для получения более подробной информации.

Использование приведенного выше кода полностью удалит скрипт jQuery.

Сценарии Замена

Если вы хотите заменить скрипт, недостаточно просто сохранить его с новыми параметрами (они будут проигнорированы). Вы должны отменить регистрацию и затем заново зарегистрировать скрипт. Вот быстрый пример:

функция my_enqueued_assets () {wp_deregister_script ('jquery'); wp_enqueue_script ('имя-сценария', '//code.jquery.com/jquery-2.2.3.min.js', array (), '2.2.3'); } add_action ('wp_enqueue_scripts', 'my_enqueued_assets');

Найти сохраненные скрипты

Если вы ищете все скрипты, которые сохраняет WordPress, вам повезло. Взгляните на документацию по wp_enqueue_scripts, и вы найдете таблицу под рукой.

Однако найти скрипты, сохраненные плагинами, немного сложнее. Вы можете перечислить все сценарии в очереди, создав дамп содержание переменной $wp_scripts.

глобальный $ wp_scripts; эхо ' ';
var_dump ($ wp_scripts);
эхо ' ';

Другой метод, который я использую, - это поиск wp_enqueue_scripts в моем каталоге плагинов. Это позволяет мне видеть, какой плагин отвечает за какой скрипт на моем сайте.

Почему замена скриптов не всегда хорошая идея

Хотя некоторые разработчики тем и плагинов могут счесть абсолютно необходимым загрузить свои собственные скрипты, и в частности другую версию jQuery, в сообществе WordPress есть некоторые разногласия по поводу того, действительно ли целесообразно загружать их. сделать.

Поскольку WordPress загружает jQuery в режиме noConflict, вероятность возникновения конфликта очень мала, поэтому темы не должны изменять поведение WordPress, и особенно WordPress обновляет встроенную версию jQuery регулярно.

Подводя итог

При удалении или замене скриптов, чего не следует делать каждый день, важно знать, как это делать правильно, чтобы, столкнувшись с ситуацией, когда это необходимо, можно было сделать это без волнений и не «сломавшись». ваш блог.

Отказавшись от подписки сценариев через пользовательский плагин, вы убедитесь, что не изменяете исходный код WordPress или тему, автором которой вы не являетесь, что позволит вам сохранить ваш код в безопасности во время обновления.