Как подключить jquery в wordpress?
Чтобы подключить jQuery в WordPress, можно воспользоваться одним из следующих методов:
- Использование встроенной версии jQuery:
jQuery встроен в WordPress, поэтому вы можете использовать его без дополнительной установки. Для того чтобы включить jQuery на странице, вам нужно добавить следующий код в функцию functions.php вашей темы:
scssfunction my_scripts() < wp_enqueue_script('jquery'); > add_action('wp_enqueue_scripts', 'my_scripts');
Это добавит версию jQuery, которая уже встроена в WordPress, на все ваши страницы.
- Подключение jQuery с помощью CDN:
Вы можете использовать CDN-хостинг для подключения jQuery. Для этого вам нужно добавить следующий код в функцию functions.php вашей темы:
javascriptfunction my_scripts( ) < wp_deregister_script('jquery'); wp_register_script('jquery', 'https://code.jquery.com/jquery-3.6.0.min.js', false, '3.6.0', true); wp_enqueue_script('jquery'); > add_action('wp_enqueue_scripts', 'my_scripts');
Этот код удалит встроенную версию jQuery и заменит ее на версию, загружаемую с CDN-хостинга.
- Подключение jQuery с помощью плагина:
Если вам не хочется изменять файлы темы, вы можете воспользоваться плагином для подключения jQuery. Некоторые популярные плагины для этой задачи включают в себя jQuery Updater и WP jQuery Plus.
Для использования плагина вам нужно его установить и активировать, после чего jQuery будет автоматически загружаться на ваш сайт.
Подключение «всегда свежей» версии JQuery в WordPress
А вообще, про подключение CSS и JS в WordPress на моём сайте есть отдельный видеоурок.
Наверное вы знаете, что на некоторых сайтах можно встретить JQuery версии 1.4.2, на некоторых 1.4.4, а иногда даже 1.6.4 (это самая последняя версия на момент написания поста).
Понятно, что часть владельцев сайтов не имеют представления о JQuery и им плевать, что там у них подключено — главное, чтобы работало, другим же просто лень следить за выходом нового JQuery и постоянно обновлять код.
Как же сделать так, чтобы на сайте автоматически подключалась всегда только самая новая версия?
Проще простого, самая последняя версия JQuery всегда находится по адресу:
script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js">script>
Если валидация будет ругаться на эту строчку кода, знайте, она написана в HTML5 🙂
А вот пример подключения JQuery к WordPress. Учтите, это будет работать только в том случае, если в вашей теме присутствуют wp_head() и wp_footer().
add_action( 'init', 'true_jquery_register' ); function true_jquery_register() { if ( !is_admin() ) { wp_deregister_script( 'jquery' ); wp_register_script( 'jquery', ( 'http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js' ), false, null, true ); wp_enqueue_script( 'jquery' ); } }
Вставьте этот код в файл functions.php. Он находится в папке с вашей текущей темой.
Миша
Впервые познакомился с WordPress в 2009 году. Организатор и спикер на конференциях WordCamp. Преподаватель в школе Нетология.
Пишите, если нужна помощь с сайтом или разработка с нуля.
Использование «$» вместо «jQuery» в шаблонах WordPress
В WordPress по умолчанию подключается библиотека jQuery. Поэтому не обязательно подключать дополнительные библиотеки jQuery, достаточно в файле functions.php подключить уже имеющуюся:
wp_enqueue_script("jQuery");
а подключать скрипты, для использования которых нужна библиотека jQuery можно таким образом через файл functions.php:
wp_enqueue_script('my-custom-script', get_template_directory_uri() .'/js/my-custom-script.js', array('jquery'), null, true);
Загвоздка в том, что эта копия jQuery находится а режиме совместимости по умолчанию. Это означает, что типичный псевдоним $ для jQuery не работает, поэтому он не конфликтует с другими библиотеками JavaScript, которые также используют знак доллара, например MooTools или Prototype.
Многие авторы плагинов и разработчики тем знают об этом, и они используют jQuery вместо $ .
/* Normal jQuery you see everywhere */ $("#some-element").yaddaYaddaYadda(); /* "Safe" jQuery you see in WordPress */ jQuery("#some-element").yaddaYaddaYadda();
Но постоянное использование jQuery усложняет чтение и увеличивает код. Поэтому, если скрипты подключаются в футере, то свой код, использующий библиотеку jQuery можно завернуть в анонимную функцию, в которую вы передаете jQuery для сопоставления $ .
(function($) < // $ Works! You can test it with next line if you like // console.log($); >)( jQuery );
Если необходимо загрузить скрипты в хедере, тогда необходимо использовать функцию document ready , тогда вы сможете использовать $ внутри нее.
jQuery(document).ready(function( $ ) < // $ Works! You can test it with next line if you like // console.log($); >);
Чтобы быть супербезопасным, вы можете поместить jQuery в режим «no conflict» и использовать другой ярлык для jQuery . В этом случае $j вместо стандартного $ . Например, стандартный $ может конфликтовать с Prototype. Вот пример безопасного использования jQuery JavaScript:
var $j = jQuery.noConflict(); $j(function()< $j("#sidebar li a").hover(function()< $j(this).stop().animate(< paddingLeft: "20px&" >, 400); >, function() < $j(this).stop().animate(< paddingLeft: 0 >, 400); >); >);
Создаем дочернюю тему. первым делом создается папка с таким же именем как у родителя с…
Быстрая заметка о проблеме, которая иногда встречается с форматами HubSpot, неправильно отображающимися на сайтах. Это…
Для мультиязычности сайтов на CMS WordPress я рекомендую использовать плагин Polylang — наиболее удобный, гибкий…
Для длинных записей, которые могут логично разбиваться на несколько блоков, например с нумерацией, или списком…
Как правильно подключить jQuery и другие скрипты к Вордпресс
Разгребая чужой код, иногда нарываешься на такие «интересные» решения, что буквально впадаешь в ступор. Недавно на одном сайте видел, как jQuery подключался несколько раз на странице. Думаю, нужно рассказать, как это правильно делается в Вордпресс.
У разработчика не было злого умысла, он пошел на это скорее всего по своей неопытности — используемая им карусель jQuery Roundabout 2.4.2 очень старая, и со свежей версией jQuery некорректно работала анимация. Точнее, не работала совсем. К сожалению, он не нашел ничего лучшего, как перед загрузкой карусели прямо в коде загрузить старую версию jQuery 1.7.1. Про консоль браузера, в которую посыпалась куча ошибок, этот горе-разработчик видимо не слышал. Многие ошибки были критические и положили часть функционала сайта. Именно по этой причине, сайт попал ко мне в работу.
Как подключить jQuery к Вордпресс
Итак, прежде чем подключать jQuery, откроем HTML-код страницы и убедимся, что jQuery не подключен ранее активной темой или каким-то из плагинов. Все подключаемые скрипты в Вордпресс должны регистрироваться и загружаться с помощью функции wp_enqueue_script() для того, чтобы плагины были в курсе о подключении той или иной библиотеки, знали о зависимостях и не загружали повторно одинаковые скрипты.
Если в HTML-коде сайта нет упоминаний о jQuery, значит инициируем его подключение в файле functions.php активной темы. jQuery в Вордпресс подключается проще всего, т.к. он зарегистрирован по умолчанию, его можно загрузить сразу по имени-ярлыку ‘jquery’.
wp_enqueue_script('jquery');
Как подключить к Вордпресс другой jQuery
Рассмотрим другую ситуацию, когда jQuery уже подключен в теме или плагине, а нужна его другая версия или необходимо загрузить jQuery из другого источника, например, с CDN.
Сначала нужно дерегистрировать ранее загруженный jQuery.
wp_deregister_script('jquery');
А затем зарегистрировать новый. Например, так:
wp_register_script('jquery', '//cdnjs.cloudflare.com/ajax/libs/jquery/2.2.4/jquery.min.js', false, null); wp_enqueue_script('jquery');
Напомню, функция wp_register_script() имеет несколько параметров: wp_register_script($handle, $src, $deps, $ver, $in_footer);
- $handle — ярлык, уникальное имя скрипта;
- $src — путь к скрипту;
- $deps — массив скриптов от которых зависит загружаемый скрипт;
- $ver — версия;
- $in_footer — загрузка скрипта в футере.
Как подключить к Вордпресс другие скрипты
С другими скриптами тоже ничего сложного нет. Допустим, у нас есть некий скрипт script.js, который лежит в директории /js/ активной темы. Он подключается аналогично в functions.php, указываем путь и придумываем уникальный ярлык ‘myscript’, например.
wp_enqueue_script('myscript', get_template_directory_uri() . '/js/script.js');
В заключение
Никогда не подключайте в Вордпресс скрипты напрямую, обязательно регистрируйте их. Даже если кажется, что всё работает, после установки очередного плагина, могут посыпаться ошибки.
И возвращаясь к jQuery Roundabout. Чтобы карусель работала со свежими версиями jQuery, в коде Roundabout нужно найти такую строку:
newBearing = methods.normalize.apply(null, [newBearing]);
и заменить её на такой код:
if (true)Подписывайтесь на мой канал @DanilinBiz.
Делюсь опытом и полезными материалами по разработке на фрилансе.Автор Иван Данилин
Делаю сайты на Вордпресс с 2008 года, в том числе уникальные инструменты для решения сложных бизнес‑задач.