TechBlogSD - Все для WordPress и WEB разработки
WEB и WordPress инструкции, новости, обзоры тем и плагинов

Подключение jQuery в WordPress (верный путь)

3 391

Во-первых, некоторые плагины используют библиотеку jQuery, и они также загружают ее. Это может вызвать проблемы. Как ваш плагин узнал, что он уже загружен?

В наши дни WordPress автоматически загружает jQuery для вас. Интеллектуальная загрузка требует, чтобы вы указывали jquery в качестве $deps параметра при вклеивании ваших других файлов JavaScript, например:

wp_enqueue_script('my-custom-script', get_template_directory_uri() .'/js/my-custom-script.js', array('jquery'), null, true);

Это объявляет jQuery как зависимость my-custom-script, поэтому WordPress автоматически загрузит свою собственную копию jQuery. Для справки, вот параметры, используемые для wp_enqueue_script () :

wp_enqueue_script( $handle, $src, $deps, $ver, $in_footer ) Поэтому, когда мы объявляем наш собственный скрипт, мы устанавливаем $deps параметр равным array(‘jquery’).

Теперь предположим, что мы хотим использовать версию jQuery, которая отличается от версии, включенной в WordPress. Мы могли бы просто вставить его в очередь, но тогда на странице будут загружены две копии / версии jQuery (ваши и WP). Поэтому, прежде чем мы введем в очередь нашу собственную версию jQuery, мы должны де-зарегистрировать версию WP. Вот окончательный код, чтобы это произошло:

// include custom jQuery function shapeSpace_include_custom_jquery() { wp_deregister_script('jquery'); wp_enqueue_script('jquery', 'https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js', array(), null, true); } add_action('wp_enqueue_scripts', 'shapeSpace_include_custom_jquery');

Здесь мы используем wp_deregister_script () для отмены регистрации jQuery WP, прежде чем включать нашу собственную версию, которая для этого примера представляет собой библиотеку jQuery, размещенную в Google , версию 3.1.1. Конечно, вы захотите изменить $srcп араметр, чтобы он соответствовал URL-адресу любого сценария jQuery, который вы хотите использовать.

Итак, это текущий «правильный способ включить jQuery в WordPress». Одно важное замечание для разработчиков тем: публично выпущенные темы должны использовать jQuery WP, а не отменять его. Просто облегчает жизнь в долгосрочной перспективе.

Другое дело, что WordPress уже включает в себя копию jQuery. Вот как вы можете загрузить jQuery в своей теме умный (и предполагаемый) способ. Поместите следующий код в свой header.php файл в разделе…

Скорее всего у вашей темы, вероятно, уже есть wp_head функция, поэтому просто убедитесь, что вы вызываете wp_enqueue_scriptфункцию ДО этого. Теперь вы настроены на вызов собственного JavaScript-файла jQuery, ПОСЛЕ wp_head функции.

Есть еще некоторые соображения. Например, защищая себя от будущей возможности конфликта с другими библиотеками. Вы действительно не должны использовать несколько JS-библиотек.

Чтобы быть супербезопасным, вы можете поместить jQuery в режим «без конфликтов» и использовать другой ярлык для 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); }); });

Статья была переведена для блога TechBlog.SDStudio.top
Источник: https://digwp.com

Источник записи:

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