Підключення плагінів jquery до wordpress (відповідь або правильне керівництво)

Це відповідь на попередню статті і розгорнуте керівництво до дії, щоб уникнути частих помилок при підключення jQuery.

Підключення плагінів jquery до wordpress (відповідь або правильне керівництво)


У більшості випадків написане в попередній статті ні кому не потрібно. Принаймні, саме в такому, описаному в статті, вигляді. Вище я вже згадував, що майстри знають принцип, а решта люди просто ставлять плагін WP або тему (наприклад, слайдер або зі слайдером відповідно), які (плагіни і теми) самі підключають скрипт jQuery, якщо він потрібен.

Підключення jQuery стандартними WP засобами


Як згадувалося в попередній статті, щоб підключити jQ, досить в "wp-content / themes / (назва теми) /header.php" ( «він же заголовок»: lol: Дякую, посміхнувся) перед рядком
прописати
Це дозволить в нашій темі підключити jquery.js. розташований в "wp-includes / js / jquery /".

Якщо ж вам дісталася тема, в якій немає wp_head () ;. то має сенс додати його перед закриває тегом . І варто подивитися, може у вас відразу після цього з'явиться вже підключений jQ. Якщо немає, то варто виконати описане вище дію.

плюси:
- Підключається по Фен-шую, одним рядком коду;
- Ні дублюючих підключень;
- Можливий контроль версії (див. Нижче).

мінуси:
- Ні контролю за версіями, все залежить від версії встановленої розробниками і відповідно версії WP. Виняток см. Нижче;
- Помилки в призначених для користувача скрипти (див. Нижче).

Проблеми стандартного способу підключення


Після підключення може виникнути проблема з непрацюючими користувацькими скриптами (вашими скриптами, ви адже саме для своїх скриптів підключили jQ ?!). Я якось зіткнувся з такою проблемою. Сам на той момент, після написання купи коду вже тупив і не без допомоги гуру tigra60 знайшлася відповідь, про який і піде мова нижче.

Підключення своєї версії jQuery стандартними WP засобами

Таким же чином можна поліпшити наш фен-шуй і помістити підключення jQ в футер, для цього треба в кінці другого рядка додати TRUE:

Якщо ви пишете свою тему, то можна модифікувати дані рядка і покласти скрипт в папку з темою.
Таким чином, підключиться в футер нашого шаблону скрипт з директорії з нашою темою.

Точно також можна підключити скрипт з будь-якого CDN

плюси
- Все той же феншуй;
- Контроль версій;
- Ні дублів;
- У третьому і четвертому випадку - ви можете бути впевнені, що ваша тема буде працювати у інших і буде саме з вашим файлом скрипта.
- У четвертому випадку ще й CDN підключаються.

Мінус в як таких немає. Можна, звичайно, притягнути за вуха:
- Незначне підвищення навантаження на сервер (перший і другий випадок);
- Зайвий запит до вашого сервера (перший і другий випадок), на відміну від підключення з CDN;
- Як і у всіх інших варіантах нижче. при оновлення WP через відсутність noConflict або відмінності в версіях може статися непередбачене, і штатні скрипти WP перестануть працювати, що мало ймовірно.

wp_deregister_script

Ця функція руйнує раніше зарезервоване ім'я для скрипта (див. Нижче).

Трохи подробиць про wp_register_script (вільний переклад)

$ Handle - Унікальне ім'я скрипта, яке використовується в функції wp_enqueue_script (). У Вордпресс є список зарезервованих імен. Однак за допомогою цієї функції можна створити і свої скрипти, які будуть викликатися в шаблоні через wp_enqueue_script () і буде захист від дублів.
Значення за замовчуванням: None;

$ Src - шлях до підключається файлу. Можна використовувати як абсолютні шляхи, так і шляхи, одержувані через GET функції (get_.).
Значення за замовчуванням: None;

$ Deps - залежність скрипта від інших. Тут можна перерахувати перелік скриптів, які повинні завантажитися до нашого скрипта. Наприклад, якщо ми створили свій скрипт, який залежить від jQ, то тут можна його оголосити, і тоді нам не доведеться спеціально викликати окремо jQ, він сам підвантажиться автоматично. наприклад
Значення за замовчуванням: array ();

$ In_footer - оголошує де підключати скрипти - в хедері або футере.
Значення за замовчуванням: false;

Підключення jQuery «дідівським» способом


Даний спосіб дозволяє без будь-яких знань WP, в тому числі спец. функцій, підключити jQ.
Досить завантажити файл необхідного скрипта на сайт. Наприклад, в папку з темою, що дозволить тягати його разом з темою.
І в header.php прописати
Думаю, тут все зрозуміло без пояснень. Саме таким чином зазвичай підключаються всі скрипти.

Можна зробити невелике поліпшення підключення, на випадок, якщо ви будете надалі змінювати домен або поширювати шаблон (хоча з дідівським способом підключення я б не радив поширювати шаблон)

плюси:
- Контроль версій
- У другому випадку «мобільність» - не залежить від домену та структури сайту (буває ж переміщують / перейменовують папки для захисту)
- Ні зайвих запитів і навантаження на PHP.

мінуси:
- У першому варіанті - прихильність до домену
- Можливі дублі підключення

Підключення jQuery з GoogleApis (Google CDN), Яндекc API (Яндекc CDN) або jQuery Сode.


Можна підключити з GoogleApis актуальну версію
Однак з виходом нової версії jQ ваш код може «зламатися». Для такого випадку можна підключити «особливу» версію
Цей код необхідно вставити в шапку шаблону в header.php між тегами і . Або, що буде правильніше, в footer.php перед закриває тегом .

Аналогічно можна підключити jQuery і інші бібліотеки з Яндекса
На жаль, як зробити рядок з постійною актуальною версією, я не знаю. Однак, на сайті Яндекса є великий список всіляких бібліотек, які ви точно так же можете підключити.

Ну і самий непопулярний спосіб, але дозволяє завжди бути «в темі».
Є ймовірність, що розробники у себе на сайті оновлюють актуальну версію jQ раніше, ніж на інших CDN'ах. Ну а також є ймовірність першим зловити баги.

Дані методи мають плюси:
- Скрипти завантажуються з CDN. Завдяки цьому скрипти будуть завантажуватися швидше, тому що буде зайвий запит йти не на ваш сервер / хостинг, а на Google сервера. Як відомо, браузери ставлять обмеження на кількість одночасних потоків з одного домену. А заодно і розвантажать ваш сервер.
- Якщо користувач відвідував сайт, на якому jQuery був підключений таким же чином - є велика ймовірність що скрипт закешовану браузером, і він не буде завантажуватися, тим самим не будуть витрачатися час і трафік користувача.

мінуси
- Можливі дублі
- Можливі проблеми на магістралі провайдера у користувача, тоді може завантажуватися довше з CDN. А у деяких провайдерів є ще розмежування на локальний і зовнішній трафік ... в загальному сенс думаю ясний. Саме через це я колись відмовився від даного способу.

У даній статті я спробував розглянути всі варіанти підключення jQ до вашого блогу. Розповісти, які підводні камені є, і як уникнути популярних помилок.

По суті, будь-який із способів має право на життя і застосування, однак варто враховувати, що в більшості з них є мінуси. Щоб уникнути проблем, були створені штатні засоби в WP для підключення jQ, якими і рекомендується користуватися для максимальної «мобільності» і звести до мінімуму ризик помилок.

Схожі статті