Не могу понять, как использовать эту функцию. Дело в том, что, первым параметром указывается уникальное имя скрипта, т.е. чтобы в следующий раз подключая этот же скрипт он не подключался два раза.
Допустим, есть плагин А. Он хранит у себя в папке js файл fancybox.js и делает wp_enqueue_script('fancybox', путь_до_этого_файла_в_папке_с_плагином). Допустим, я пишу плагин Б, и тоже использую этот же js-ник. Но, во-первых, он лежит в папке с моим плагином, а во-вторых, я его назову wp_enqueue_script('fancy-box'). И он подключится два раза?
Непонятно, что это за имя в первом параметре и как его задавать. Ведь, например, оно же используется для описания зависимостей. И если мой плагин зависит от jquery, то я пишу jquery, а если от fancybox, который я назвал fancy-box, а другой плагин по-другому, то он прогрузится несколько раз.
Подключаеш свой js так: wp_enqueue_script('fancy-box', путь_до_своего_файла, array('fancybox')). А вообще, если fancybox нужен только если подключеться fancy-box, то для fancybox лучше воспользоваться wp_register_script()
Я не понимаю как задаются имена скриптов и что будет если один и тот же скрипт загрузить под разными именами. Вот в том что вы написали array('fancybox') - зависимость от fancybox, но откуда я знаю что скрипт зарегистрирован именно под этим именем? И что будет если сделать например такое: wp_enqueue_script('jQuery', путь_до_jquery_которую_я_сам_подгрузил), а в системе уже есть jquery?
Подгрузит тот, что вы задали. В движке уже есть зарегистрированнаые скрипты. Переопределить вроде как не получиться. Если зарузить под разными именами, то они оба подгрузяться, хотя я и не проверял, но ничего не мешает это сделать. А как задавать имена -- как вам удобно, это всего лишь идентификатор скрипта
вы все правильно написали.
сторонние скрипты могут быть названы по-разному и будут грузиться несоклько раз.
но функция в этом контексте заточена под встроенные библиотеки вордпресса.
вам не надо регистрировать jquery - вам нужно только его вызвать.
Ну чтобы подключить другую версию jQuery, не обязательно ее дерегистрировать ( я бы даже не рекомендовал, так как некоторые плагины могут использовать встраенный jQuery и что то может не работать). Лучше зарегистрировать новый со своим адрессом
@hermit931 из серии "Вредные советы"
У вас что, будет на странице грузится две версии библиотеки?
Нужно дерегистрировать, и регистрирвоать новую под тем же именем.
@zelenin вообще не нужно ничего дерегистрировать, нужно просто принудительно юзать встроенную версию jQuery, об этом уже тысячи раз писали сами разработчики ядра, большими буквами и жирным красным текстом. Многие плагины на эту родную версию опираются. Использование Google CDN для выигрыша весьма спорное. Если бы Вы из этого CDN одновременно 3-4 библиотеки тянули - тогда есть смысл, а отдельно только jQuery - Вы на dns резолвинге и коннекте потеряете больше, чем на скачивание со своего сервера. А если грамотно развести свои статические файлы на сервере на поддомен, то это еще и не будет упираться в лимит одновременных закачек с одного хоста и распаралелит загрузки, что лишь ускорит еще больше, и вариант с CDN вообще отпадает.
@korobochkin а что мешает подключить WP-Minify или один из плагинов для кеширования (W3 Total Cache, WP Super Cache), которые минифицируют и комбинируют скрипты и стили в один? Оптимизация ресурсов - это как раз важный и нужный этап. Это все автоматизируется :)