А вообще, про подключение 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. Он находится в папке с вашей текущей темой.
Чтобы оставить комментарий, пожалуйста, зарегистрируйтесь или войдите.
Спасибо! Первый из ~5 способов который корректно работает на моих сайтах. Постоянно возникали проблемы с JQuery, и загрузка с внешнего источника очень кстати.
Очень интересный сайт. Подкину ещё способ, который отличается сначала проверкой админа и только после этого добавлением функции + линк я другой обычно использую + всё это закидывается только в футер:
Таким же способом можно регистрировать другие библиотеки:
Там очепятка получилась:
*который отличается сначала проверкой админки.
Спасибо за все функции для wordpress =) многие внедрил на сайт! Успехов!
пожалуйста)
Не сомненно способ хорош, но проблема в том что библиотеки и плагины почему то написанны под jquery старых версий, бред какой то, подключаю новую и все перестает работать ,круто одним словом
А для чего необходима проверка на админку?
Можете и в админке переподключить, если хотите.
У меня библиотека с примером из поста помещается в footer. Что нужно прописать чтобы
попадала в head после тега title?
я вот по этому уроку http://eysman.pro/kak-vyvesti-modalnoe-vsplyvayushhee-okno-bez-plaginov.html
(потом удалите - не спам)
пытаюсь сделать всплывающее, модальное, popUP окно. Когда на кнопку нажимаешь, затемняется bg и появляется отцентрованная форма обратной связи или какой-нибудь другой формы.
Знаю, что представленный способ работает на статических сайтах, а вот на WP - увы, но нет.
нажимаю на кнопку и просто в урле site.re/# появляется...
Чтобы она попала в head, измените последний аргумент функции
wp_register_script()
наfalse
.Модальное не работает из-за ошибки в jQuery, тут много всяких ситуаций может быть. Если после перемещения jQuery в head ничего не изменится, откройте консоль браузера, посмотрите, что не так.
Спасибо, библиотека теперь в head. Эх, но не работает эта "всплывашка". Буду искать варианты как ее реализовать без плагинов.
Миша, подскажите:) после добавления вашего кода ломается слайдер в теме, как можно обойти эту проблему?
И меню в мобильной версии открытым остается
Возможно ваш скрипт слайдера не поддерживает новую версию jQuery, но это не точно :)
Здравствуйте. Воспользовалась вашим кодом. Но у меня на одном сайте появляется в футере ссылка на библиотеку, в другом в хедере. Как сделать чтобы появлялось в конкретном месте (или в хедере или в футере). На обоих сайтах и в хедере и в футере стоят wp_head() и wp_footer() соответственно
Сори, нашла ответ выше )))
Здравствуйте!
Ок, рад, что вы разобрались :)
Здравствуйте!
Относительно недавно на проектах которые планируют интеграцию с wordpress стал использовать при верстке те версии jQuery, которые использует wordpress, хотя раньше всегда менял кодом, похожим на код из статьи.
Причиной перехода стали проблемы на одном из магазинов, где платный фильтр ни в какую не хотел работать с новой версией jQuery.
Я так понимаю, что разработчики плагинов пилят их тоже под стандартную версию.
Насколько правильное мое решение или может есть способ лучше?
Здравствуйте,
Я использую обычно jquery из ядра, а сам код оборачиваю в это:
Пока что мне этого хватало. Но если какой-то плагин не работает под новую версию, то нужно либо менять версию, либо плагин.