Как подключить js wordpress
Перейти к содержимому

Как подключить js wordpress

  • автор:

Как добавить JavaScript на WordPress

В статье мы расскажем, как подключить скрипт JS в тему WordPress.

Что такое JavaScript

JavaScript — это скриптовый язык программирования. Его скрипты обрабатываются не на сервере, а прямо в браузере. Это позволяет добавлять новые функции без потери скорости сайта.

Скрипт JS встроен внутрь тега — он позволяет отделить написанный код JavaScript от PHP:

  

Если вы хотите добавить скрипт JS, просто разместите его на нужной странице в коде сайта. Однако если вы работаете с WordPress, разместить JavaScript на странице таким способом не получится — он удалится при сохранении пользовательского файла. О том, как обойти это ограничение, расскажем ниже.

Как добавить JavaScript на WordPress

Если вы хотите добавить JS в WordPress, выберите один из трех способов:

  • с помощью плагина Shortcoder,
  • с помощью плагина Insert Headers and Footers,
  • с помощью изменения файла functions.php.

Выберите инструкцию, чтобы разрешить подключение скрипта WordPress.

С помощью плагина Shortcoder

Shortcoder — это плагин, с помощью которого можно создать блок кода элемента. После публикации создается специальный шаблон, который можно добавить на нужную вам страницу.

Чтобы установить Shortcoder:

добавить js в wordpress 1

Откройте раздел Плагины — Добавить новый:

добавить js в wordpress 2

В поисковой строке введите название плагина. Когда поиск отобразит результат, нажмите Установить:

добавить js в wordpress 3

Кликните Активировать:

добавить js в wordpress 4

В разделе «Shortcoder» нажмите Create shortcode:

  • Text editor — для добавления простого текста,
  • Visual editor — для верстки небольшого элемента с текстом и изображением,
  • Code editor — для добавления скрипта. Рекомендуем использовать его.

добавить js в wordpress 5

Введите название и вставьте код. Вы можете сохранить этот фрагмент в качестве черновика, но до публикации добавить его на страницу не получится. Для создания черновика кликните Сохранить: добавить js в wordpress 6Если скрипты для сайта WordPress добавлены и вы хотите сохранить готовый шаблон, нажмите Опубликовать: добавить js в wordpress 7

Готовый шаблон вы сможете добавить на любую страницу через админку.

С помощью плагина Insert Headers and Footers

Insert Headers and Footers — это плагин, с помощью которого можно создать шаблон кода. В этом шаблоне можно обозначить, в какой части страницы должен отрабатываться скрипт.

Чтобы установить Insert Headers and Footers:

добавить js в wordpress 8

Откройте раздел Плагины — Добавить новый:

добавить js в wordpress 9

В поисковой строке укажите имя плагина. Когда поиск отобразит результат, кликните Установить:

добавить js в wordpress 10

Нажмите Активировать:

добавить js в wordpress 11

Перейдите в раздел Плагины — Установленные:

добавить js в wordpress 12

В списке найдите WP Headers and Footers и кликните Settings:

  • Header — шапку сайта,
  • Body — тело сайта,
  • Footer — подвал сайта. Добавьте код в нужную часть страницы:

добавить js в wordpress 13

WordPress: как подключить скрипт

добавить js в wordpress 14

Кликните Сохранить изменения:

С помощью изменения файла functions.php

В корневой директории сайта перейдите в папку wp-includes. Затем выберите инструкцию для вашей панели управления.

JavaScript на WordPress: как добавить

Читайте нашу статью, если хотите узнать, как настроить JS для WordPress. Мы расскажем о преимуществах JavaScript и покажем три способа его подключения на WP.

Что такое JavaScript и как работает

JavaScript — мультипарадигменный язык программирования. С его помощью можно добавить на веб-страницу сложные элементы: динамически обновляемый контент, интерактивные карты, 2D/3D-анимацию, прокрутку видео и другое.

Скрипты JS обрабатываются не на сервере, а прямо в браузере. Чтобы браузер мог прочитать JavaScript и отобразить пользователю нужный контент, в него встроен специальный движок. Именно он обрабатывает JS-скрипты и затем переводит их в машинный код. Самый популярный в настоящее время движок V8 был разработан в 2008 году компанией Google.

Скрипт JS выглядит следующим образом:

  

Обычно, чтобы на сайте отображались JavaScript-элементы, достаточно добавить этот скрипт в код сайта. Однако на WP этот номер не проходит — после сохранения пользовательского файла все изменения удаляются. Поэтому ниже мы показали альтернативные способы настройки JavaScript на WordPress.

Как подключить JS в WordPress

Добавить JS в WordPress можно одним из трёх способов:

  • через файл functions.php,
  • с помощью плагина Insert Headers and Footers,
  • с помощью плагина Shortcoder.

через изменение файла functions.php

functions.php — это главный файл темы, который загружается при каждом открытии любой страницы WordPress. В нём задаются свойства, внешний вид и функциональность темы, а также кастомизируются хуки. Через functions.php можно добавить на сайт новые функции без установки плагинов.

  1. Войдите в панель управления хостингом.
  2. Откройте папку wp-includesв корневом каталоге сайта.
  3. Кликните по файлу functions.php, наведите курсор мыши на кнопку Редактировать и выберите Открыть:
  4. Добавьте код и нажмите Ok: Готово, скрипты для сайта WordPress добавлены.

через плагин Insert Headers and Footers

Insert Headers and Footers by WPBeginner — это простой в использовании плагин, который позволяет вставить код Google Analytics, JavaScript, пользовательский CSS и другие данные в нужную часть сайта WordPress — шапку, подвал или тело. При этом саму тему редактировать не нужно.

  1. Войдите в WordPress.
  2. Перейдите раздел ПлагиныДобавить новый. Введите «Insert Headers and Footers by WPBeginner» в поисковую строку и кликните Установить:
  3. Нажмите Активировать:
  4. Перейдите в раздел НастройкиInsert Headers and Footers. Вставьте скрипт в одну из трёх частей сайта:
  • в Header (шапка сайта),
  • в Body (основная часть сайта),
  • в Footer (подвал сайта).

5. После этого нажмите Сохранить изменения: Готово, подключение скрипта для WordPress завершено.

через плагин Shortcoder

Shortcoder — плагин для создания и вставки шорткода в текст записей. Очень прост в использовании. С его помощью можно добавить на страницы рекламу Я.Директ, любые JS-скрипты, Flash-содержимое и многое другое.

  1. Войдите в WordPress.
  2. Перейдите раздел ПлагиныДобавить новый. Введите «Shortcoder», а затем кликните Установить:
  3. Нажмите Активировать:
  4. В настройках плагина из раскрывающегося списка выберите режим Code editor:
  5. Укажите название и добавьте код. Этот фрагмент нельзя добавить на страницу до публикации, но можно сохранить в качестве шаблона. Чтобы создать черновик шаблона, нажмите Сохранить:
  6. Чтобы сохранить готовый шаблон, нажмите Опубликовать: Готово. Теперь вы можете встроить этот шаблон на любую страницу.

Популярные статьи

  • Как указать (изменить) DNS-серверы для домена
  • Я зарегистрировал домен, что дальше
  • Как добавить запись типа A, AAAA, CNAME, MX, TXT, SRV для своего домена
  • Что такое редирект: виды и возможности настройки
  • Как создать почту со своим доменом

wp_enqueue_script() — подключение JavaScript

Рекомендуемый метод подключения скриптов WordPress. Имеет ряд особенностей:

  • JS-файлы вставляются на страницы сайта через функции wp_head() и wp_footer(),
  • в админке же скрипты объединяются в один с помощью PHP-обработчика load-scripts.php ,
  • позволяет подключать скрипты с учетом их зависимостей друг от друга;

То есть нужный вам js-файл не будет вставляться в HTML сразу же, как только вы использовали функцию, т.к. функция всего лишь помещает файл в очередь для вывода.

Если хотите узнать больше про правильное подключение JS-файлов WordPress, то могу порекомендовать вам мой видеоурок.

wp_enqueue_script( $handle, $src = false, $deps = array(), $ver = false, $in_footer = false )

Параметры функции wp_enqueue_script()

$handle (строка) какое-нибудь название (идентификатор), придуманное вами (строка в нижнем регистре), либо можно подключить уже зарегистрированные (через wp_register_script()) ранее скрипты, используя их идентификаторы $src (строка) абсолютный URL файла JavaScript, который требуется подключить, этот параметр (и все последующие тоже) нужен только для незарегистрированных скриптов $deps (массив) массив идентификаторов скриптов, от которых зависит подключаемый скрипт $ver (строка) версия файла. Если установить значение null , то версия не будет указываться. По умолчанию — текущая версия WordPress. Подробнее про параметр. $in_footer (логическое) по умолчанию файлы JavaScript подключаются внутри тегов . Если же указать данный параметр равным true , тогда скрипт будет вставлен непосредственно перед закрывающим тегом .

Пример 1 – подключение JS файла

Для вставки скриптов во фронтэнде (т.е. не в админке), используйте хук wp_enqueue_scripts , пример:

add_action( 'wp_enqueue_scripts', 'true_include_myscript', 25 ); function true_include_myscript() { wp_enqueue_script( 'myscript', get_stylesheet_directory_uri() . '/script.js', array(), '3.0' ); }

Тот же самый пример, но только с зависимостью от jQuery:

add_action( 'wp_enqueue_scripts', 'true_include_myscript_dep_jquery', 25 ); function true_include_myscript_dep_jquery() { wp_enqueue_script( 'myscript', get_stylesheet_directory_uri() . '/script.js', array( 'jquery' ), '3.0' ); }

Пример подключения в админке

Для подключения скриптов только в админке используйте хук admin_enqueue_scripts , например:

add_action( 'admin_enqueue_scripts', 'true_include_in_admin', 25 ); function true_include_in_admin() { wp_enqueue_script( 'myscript', . ); }

Пример 2 – подключение jQuery CDN

Иногда бывает, что вы хотите подключите какой-то скрипт с CDN, это даже не обязательно должен быть jQuery, в этом случае указываем полный URL файла.

add_action( 'wp_enqueue_scripts', 'true_jquery_cdn', 25 ); function true_jquery_cdn() { wp_deregister_script( 'jquery' ); wp_enqueue_script( 'jquery', '//ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js' ); }

Пример 3 – как подключить JS к HTML

Небольшое отклонение от нашей темы и от функции wp_enqueue_script() – хочу показать вам именно способы подключения JS к HTML сайта в или в футере при помощи тегов .

Для подключения между тегами и мы будем использовать хук wp_head:

add_action( 'wp_head', 'truemisha_script_to_head', 25 ); function truemisha_script_to_head() { echo ''; }

А для футера сайта соответственно используем хук wp_footer:

add_action( 'wp_footer', 'truemisha_script_to_footer', 25 ); function truemisha_script_to_footer() { echo ''; }

Если хотите узнать больше про правильное подключение JS-файлов WordPress, то могу порекомендовать вам мой видеоурок.

Пример 4. Подключение JS только на странице настроек конкретного плагина

Получается, что мы подключаем необходимый JavaScript файл только там, где нужно — это же здорово!

add_action( 'admin_init', 'true_plugin_admin_init' ); add_action( 'admin_menu', 'true_plugin_admin_menu' ); function true_plugin_admin_init() { /* * Регистрируем скрипт, * он кстати должен находиться той же папке, что и файл, в который будет вставлен этот код. */ wp_register_script( 'myscript', plugins_url( '/myscript.js', __FILE__ ) ); } function true_plugin_admin_menu() { /* * Добавляем субменю настроек плагина в Параметры. */ $page_hook_suffix = add_submenu_page( 'options-general.php', 'Мой плагин', 'Настройки моего плагина', 'manage_options', 'true-plugin', 'true_plugin_print_page' ); /* * Нетрудно догадаться, что вся фишка кроется в переменной $page_hook_suffix */ add_action( 'admin_print_scripts-' . $page_hook_suffix, 'true_plugin_admin_scripts' ); } function true_plugin_admin_scripts() { /* * Подключаем наш уже зарегистрированный ранее скрипт. */ wp_enqueue_script( 'myscript' ); } function true_plugin_print_page() { /* * Cодержимое страницы настроек. */ echo 'Привет'; }

Таблица стандартных скриптов в WordPress

Все скрипты, перечисленные в этой таблице, регистрировать не нужно, так как они уже присутствуют в ядре WordPress и зарегистрированы, достаточно указать их идентификатор при подключении, например: wp_enqueue_script( ‘идентификатор’ ) или:

wp_enqueue_script( 'jquery' );
Идентификатор Файл Зависимости
jcrop /wp-includes/js/jcrop/jquery.Jcrop.min.js
swfobject /wp-includes/js/swfobject.js
swfupload /wp-includes/js/swfupload/swfupload.js
swfupload-queue /wp-includes/js/swfupload/plugins/swfupload.queue.js
swfupload-handlers /wp-includes/js/swfupload/handlers.min.js
jquery /wp-includes/js/jquery/jquery.js json2 (для AJAX запросов)
jquery-form /wp-includes/js/jquery/jquery.form.min.js jquery
jquery-color /wp-includes/js/jquery/jquery.color.min.js jquery
jquery-masonry /wp-includes/js/jquery/jquery.masonry.min.js jquery
jquery-ui-core /wp-includes/js/jquery/ui/jquery.ui.core.min.js jquery
jquery-ui-widget /wp-includes/js/jquery/ui/jquery.ui.widget.min.js jquery
jquery-ui-mouse /wp-includes/js/jquery/ui/jquery.ui.mouse.min.js jquery
jquery-ui-accordion /wp-includes/js/jquery/ui/jquery.ui.accordion.min.js jquery
jquery-ui-autocomplete /wp-includes/js/jquery/ui/jquery.ui.autocomplete.min.js jquery
jquery-ui-slider /wp-includes/js/jquery/ui/jquery.ui.slider.min.js jquery
jquery-ui-tabs /wp-includes/js/jquery/ui/jquery.ui.tabs.min.js jquery
jquery-ui-sortable /wp-includes/js/jquery/ui/jquery.ui.sortable.min.js jquery
jquery-ui-draggable /wp-includes/js/jquery/ui/jquery.ui.draggable.min.js jquery
jquery-ui-droppable /wp-includes/js/jquery/ui/jquery.ui.droppable.min.js jquery
jquery-ui-selectable /wp-includes/js/jquery/ui/jquery.ui.selectable.min.js jquery
jquery-ui-position /wp-includes/js/jquery/ui/jquery.ui.position.min.js jquery
jquery-ui-datepicker /wp-includes/js/jquery/ui/jquery.ui.datepicker.min.js jquery
jquery-ui-resizable /wp-includes/js/jquery/ui/jquery.ui.resizable.min.js jquery
jquery-ui-dialog /wp-includes/js/jquery/ui/jquery.ui.dialog.min.js jquery
jquery-ui-button /wp-includes/js/jquery/ui/jquery.ui.button.min.js jquery
jquery-effects-core /wp-includes/js/jquery/ui/jquery.ui.effect.min.js jquery
jquery-effects-blind /wp-includes/js/jquery/ui/jquery.ui.effect-blind.min.js jquery-effects-core
jquery-effects-bounce /wp-includes/js/jquery/ui/jquery.ui.effect-bounce.min.js jquery-effects-core
jquery-effects-clip /wp-includes/js/jquery/ui/jquery.ui.effect-clip.min.js jquery-effects-core
jquery-effects-drop /wp-includes/js/jquery/ui/jquery.ui.effect-drop.min.js jquery-effects-core
jquery-effects-explode /wp-includes/js/jquery/ui/jquery.ui.effect-explode.min.js jquery-effects-core
jquery-effects-fade /wp-includes/js/jquery/ui/jquery.ui.effect-fade.min.js jquery-effects-core
jquery-effects-fold /wp-includes/js/jquery/ui/jquery.ui.effect-fold.min.js jquery-effects-core
jquery-effects-highlight /wp-includes/js/jquery/ui/jquery.ui.effect-highlight.min.js jquery-effects-core
jquery-effects-pulsate /wp-includes/js/jquery/ui/jquery.ui.effect-pulsate.min.js jquery-effects-core
jquery-effects-scale /wp-includes/js/jquery/ui/jquery.ui.effect-scale.min.js jquery-effects-core
jquery-effects-shake /wp-includes/js/jquery/ui/jquery.ui.effect-shake.min.js jquery-effects-core
jquery-effects-slide /wp-includes/js/jquery/ui/jquery.ui.effect-slide.min.js jquery-effects-core
jquery-effects-transfer /wp-includes/js/jquery/ui/jquery.ui.effect-transfer.min.js jquery-effects-core
schedule /wp-includes/js/jquery/jquery.schedule.js jquery
suggest /wp-includes/js/jquery/suggest.min.js jquery
thickbox /wp-includes/js/thickbox/thickbox.js
jquery-hotkeys /wp-includes/js/jquery/jquery.hotkeys.min.js jquery
sack /wp-includes/js/tw-sack.min.js
quicktags /wp-includes/js/quicktags.min.js
autosave /wp-includes/js/autosave.min.js
wp-ajax-response /wp-includes/js/wp-ajax-response.min.js
wp-lists /wp-includes/js/wp-lists.min.js
common /wp-admin/js/common.min.js
password-strength-meter /wp-admin/js/password-strength-meter.min.js
comment-reply /wp-includes/js/comment-reply.min.js
media-upload /wp-admin/js/media-upload.min.js
word-count /wp-admin/js/word-count.min.js
json2 /wp-includes/js/json2.min.js
plupload /wp-includes/js/plupload/plupload.js
underscore /wp-includes/js/underscore.min.js
backbone /wp-includes/js/backbone.min.js

Миша

Впервые познакомился с WordPress в 2009 году. Организатор и спикер на конференциях WordCamp. Преподаватель в школе Нетология.

Пишите, если нужна помощь с сайтом или разработка с нуля.

  1. Параметры
  2. Пример 1 – подключение
  3. Пример 2 – jQuery через CDN
  4. Пример 3 – подключение тегом script
  5. Пример 4 – только на странице плагина
  6. Скрипты в ядре
Комментарии — 34

Лариса 16 Окт 2013

Михаил, здравствуйте! Возник вопрос: в Кодексе в описании этой функции нет параметра in_footer. Так как все-таки на самом деле? Дело в том, что занимаюсь переносом скриптов из хедера в подвал, и было бы очень удобно, если бы функция действительно принимала этот параметр)

Миша 16 Окт 2013
Добрый день)
а в чем собственно вопрос? этот параметр есть, по умолчанию принимает значение false
Лариса 16 Окт 2013

Вопрос только в том, что на странице описания этой функции в Кодексе об этом параметре нет ни слова. А у Вас прочитала, вот и спрашиваю.

Миша 17 Окт 2013
русская версия Кодекса мягко говоря не очень) да и в английской иногда бывают недочеты.
Лариса 16 Окт 2013
И вернулась сказать спасибо) Действительно есть и действительно работает. Большое спасибо 🙂
Миша 17 Окт 2013
пожалуйста)
Евгений 28 Ноя 2013

Спасибо за статью.
Нашел тут сайт с русским сервером скриптов
http://salat-production.ru/interactive-jquery-mootools-cdn.php

VRS 24 Мар 2014

Доброй ночи.
Подскажи, пожалуйста, а как подключить новый медиазагрузчик?
Вот такой код выводит «старый»

function my_add_upload_scripts() { wp_enqueue_script('media-upload'); wp_enqueue_script('thickbox'); wp_register_script( 'my-upload-script' /* Подключаем JS-код задающий поведение * загрузчика и указывающий, куда вставлять * ссылку после загрузки изображения * Его код будет приведен ниже. */ ,get_bloginfo('template_url').'/js/upload.js' /* Указываем скрипты, от которых * зависит наш JS-код */ ,array('jquery','media-upload','thickbox') ); wp_enqueue_script('my-upload-script'); } // Запускаем функцию подключения загрузчика if( is_admin() ) add_action('admin_print_scripts', 'my_add_upload_scripts');

пробовала менять media-upload на plupload-full, но не работает.
Антон 15 Авг 2014

$deps
(массив) массив идентификаторов скриптов, от которых зависит подключаемый скрипт Вот про $deps я вообще ничего не понял какие там должны быть идентификаторы?? Что от чего зависит (т.е как может быть что бы скрипты друг от друга зависили)?? Можете пожалуйста подробнее растолковать.

Миша 15 Авг 2014

Ну например у вас есть какой-то код jQuery и он не будет работать пока не поключена сама библиотека jQuery — один из примеров такой зависимости.

Антон 15 Авг 2014
Да например js код какой то не может работать без jq но можно прописать же так например

wp_enqueue_script( 'myscript', get_stylesheet_directory_uri() . '/jq.js', '', '3.0', false ); wp_enqueue_script( 'myscript', get_stylesheet_directory_uri() . '/js.js', '', '3.0', false );

и все будет зависеть и все без всяких array в чем тогда разница?
Миша 16 Авг 2014

Дело в том, что скрипты могут подключаться в разных местах, не только в теме, но и в плагинах, поэтому, чтобы все файлы задействовались в правильном порядке, нужно указывать этот параметр $deps.

Антон 16 Авг 2014

Все понял спасибо. И еще как сделать так что бы Jquery подключался у меня в wp_footer перед боди. Пишу вот так wp_enqueue_script(‘jquery’); но он у меня в шапке подключается.

Миша 16 Авг 2014
Нужно провернуть примерно такую комбинацию:

wp_deregister_script('jquery'); wp_register_script('jquery', 'URL скрипта', false, null, true); wp_enqueue_script('jquery');

Антон 16 Авг 2014
Все спасибо большое!
Миша 17 Авг 2014
Рад помочь 🙂
Сайра 23 Янв 2015

Всем здравствуйте. Извините за вопрос, скорее всего он для всех Вас покажется очень глупым. Я прописываю такой код в WP

Ваш департамент*
Ваш отдел*
function onChange() < var objSel = document.getElementById("change");; var select1 = document.getElementById("change1"); var select2 = document.getElementById("change2"); var select3 = document.getElementById("change3"); var select4 = document.getElementById("change4"); var select5 = document.getElementById("change5"); if (objSel.value == 1) < select1.style.display = 'block'; select2.style.display = 'none'; select3.style.display = 'none'; select4.style.display = 'none'; select5.style.display = 'none'; >if (objSel.value == 2) < select2.style.display = 'block'; select1.style.display = 'none'; select3.style.display = 'none'; select4.style.display = 'none'; select5.style.display = 'none'; >if (objSel.value == 3) < select3.style.display = 'block'; select1.style.display = 'none'; select2.style.display = 'none'; select4.style.display = 'none'; select5.style.display = 'none'; >if (objSel.value == 4) < select4.style.display = 'block'; select2.style.display = 'none'; select3.style.display = 'none'; select1.style.display = 'none'; select5.style.display = 'none'; >>

и если честно, то он у меня не работает(((( а я не знаю куда вставлять код, чтобы подключить JS((( ПОМОГИТЕ ПОЖАЛУЙСТА

Миша 24 Янв 2015
Здравствуйте! Скажите, какая у этого кода задача?
Сайра 4 Фев 2015

у меня имеется два selectmenu. При выборе департамента, у меня автоматически должен появляться отдел. Если этот код сохранить через блокнот в расширении .js, то все идеально работает, а на WР никак не могу подключить. На сколько я поняла, мне необходимо сохранить мой скрипт в расширении js и положить его в папку плагины, а потом просто ссылаться на него, но никак не разобралась и ничего не заработало((((

Сайра 4 Фев 2015
то есть, если сохранить в блокноте в расширении .html то все работатет
Миша 4 Фев 2015

В таком случае сначала просто вставьте этот код в WordPress туда, где его нужно вывести, в какой-нибудь php-файл. Сохранять его в .js неправильно, так как там также имеется и html код.

артем 14 Май 2015

здравствуйте. хочу реализовать на блоге вордпресс печать по этой инструкции: _http://loco.ru/materials/107-php-print-this-page-feature-javascript. я не понимаю, как подключить скрипт через отдельный Js-файл. пробовал, но не получается. можете объяснить и сколько стоит?

Миша 15 Май 2015
Здравствуйте. Вот так:

script src="URL скрипта">script>

артем 15 Май 2015

Миша, огромное спасибо, заработало. только в бланке печати русские буквы отображаются в виде символов (когда подключаю Js файл). когда скрипт просто вставляю в тело, то буквы отображаются нормально. может еще что-то надо указать, чтобы кириллица отображалась?

wp_enqueue_script() │ WP 2.1.0

Правильно подключает скрипт (JavaScript файл) на страницу. Использовать эту функцию для подключения js файлов важно, потому что так вы в дальнейшем сможете без лишних проблем объединять JS файлы в один. Также в некоторых случаях избавитесь от конфликтов скриптов, когда зависимый скрипт подключается до основного (того от которого он зависит). Функция добавляет скрипт, только если он еще не был добавлен и другие скрипты от которых он зависит, зарегистрированы. Зависимые скрипты добавляются автоматически.

ВАЖНО! Это ошибка начинающих разработчиков. Функция ничего не выведет, если в теме не используется wp_head() или wp_footer(). Именно в момент вызова этих функций срабатывает хук, который добавляет скрипты. Также эта функция должна вызываться до wp_footer(), иначе скрипты вообще не будут подключены.

Если скрипт уже зарегистрирован с помощью wp_register_script(), то для его подключения в этой фукнции нужно указать только идентификатор скрипта (в первом параметре):

// jquery регистрируется в WP по умолчанию. // Поэтому для его подключения достаточно одной строки: wp_enqueue_script('jquery');

Если скрипт не зарегистрирован, то его можно зарегистрировать и подключить одновременно:

wp_enqueue_script( 'newscript', get_template_directory_uri() . '/js/custom_script.js');

С версии 3.3. wp_enqueue_script() можно вызывать во время генерации страницы. В этом случае вызываемый скрипт будет подключен в подвале, в момент срабатывания события wp_footer.

  • wp_enqueue_scripts — для внешней части сайта;
  • admin_enqueue_scripts — для админ-панели;
  • login_enqueue_scripts — для страницы входа (wp-login.php).
  • Используйте wp_script_add_data() — когда нужно подключить скрипт с условием, например,

Уже зарегистрированные в WP скрипты смотрите ниже в этой статье.

$deps(массив) Массив названий скриптов от которых зависит этот скрипт; скрипты которые должны быть загружены перед этим скриптом. Этот параметр необходим только в случае, если WordPress еще не знает об этом скрипте.
По умолчанию: array() $ver(строка)

Строка указывающая версию скрипта, если она у него есть. Этот параметр используется для того чтобы удостовериться, что клиент получил верную версию скрипта, а не из кеша.

Если параметр не указан, то в качестве версии скрипта будет использована версия WordPress.

Если указать null , то никакая версия не будет добавлена.

По умолчанию: false

Параметры подключения скрипта. Поддерживаются два параметра:

    in_footer(bool) - По умолчанию: false. Нужно ли выводить скрипт в подвале footer. По умолчанию скрипты располагаются в head части. Если этот параметр будет равен true скрипт будет выводиться конце body тега. Если из-за зависимости от других скриптов нет возможности подключить текущий скрипт в подвале, то значение этой переменой будет проигнорировано и скрипт будет подключен в head.

В теме должна вызываться функция wp_footer() перед закрывающим тегом .

До WP 6.3 этот параметр назывался $in_footer и принимал true/false.
С версии 6.3 параметр стал принимать массив данных, а прежний параметр $in_footer был перенесен в элемент массива in_footer :

[ 'in_footer' => true, 'strategy' => 'async', ]

Подробнее про это изменение читайте здесь.

Примеры

#1 Динамическое определение версии файла

Чтобы при изменении файла, URL файла отличался и он загрузился в браузер как новый, а не брался из кэша, можно указать версию файла динамически на основе времени изменения файла:

add_action('wp_enqueue_scripts', 'my_scripts_method'); function my_scripts_method() < wp_enqueue_script('custom-script', get_template_directory_uri() . '/js/custom_script.js', array('jquery'), filemtime( get_theme_file_path('js/custom_script.js') ) ); >

Производительность filemtime() очень высока - на SSD диске 0,5 сек на 50к итераций - это очень быстро!

#2 Загружаем базовый скрипт WordPress с нестандартного адреса.

Допустим, вы хотите вместо библиотеки jQuery из состава WordPress подключить её CDN-копию. Добавьте этот код в файл functions.php активной темы:

add_action( 'wp_enqueue_scripts', 'my_scripts_method', 11 ); function my_scripts_method() < wp_deregister_script( 'jquery' ); wp_register_script( 'jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js'); wp_enqueue_script( 'jquery' ); >

Используя фильтр wp_enqueue_scripts (вместо фильтра init, на который ссылаются некоторые статьи на сторонних сайтах), мы избегаем регистрации альтернативной версии jQuery на страницах админки, что, среди прочего, снижает риск нарушения работы редактора записей.

#3 Регистрируем и подключаем свой скрипт, зависящий от jQuery

Зарегистрируем и добавим новый скрипт, который зависит от jquery (это также вызовет загрузку jquery на странице):

add_action( 'wp_enqueue_scripts', 'my_scripts_method' ); function my_scripts_method() < $script_url = plugins_url( '/js/newscript.js', __FILE__ ); wp_enqueue_script('custom-script', $script_url, array('jquery') ); >
#4 Загружаем скрипты плагина только на его страницах
add_action( 'admin_menu', 'my_plugin_admin_menu' ); function my_plugin_admin_menu() < // Регистрируем страницу плагина $page = add_submenu_page( 'edit.php', // Родительская страница меню __( 'Мой плагин', 'myPlugin' ), // Название пункта меню __( 'Мой плагин', 'myPlugin' ), // Заголовок страницы 'manage_options', // Возможность, определяющая уровень доступа к пункту 'my_plugin-options', // Ярлык (часть адреса) страницы плагина 'my_plugin_manage_menu' // Функция, которая выводит страницу ); // Используем зарегистрированную страницу для загрузки скрипта add_action( 'load-' . $page, 'my_plugin_admin_scripts' ); >## Эта функция будет вызвана только на странице плагина, подключаем скрипт function my_plugin_admin_scripts() < wp_enqueue_script( 'my-plugin-script', plugins_url('/script.js', __FILE__) ); >function my_plugin_manage_menu() < // Выводим страницу плагина >
#5 Загружаем штатный скрипт scriptaculous.
// На внешней части сайта (в теме оформления) add_action( 'wp_enqueue_scripts', 'my_scripts_method' ); function my_scripts_method()
#6 Подгружаем скрипт только для нужных типов страниц

Допустим нам нужно использовать условные теги, чтобы подгрузить свой скрипт scriptaculous. Тогда мы может подключиться на хук wp , в момент его срабатывания мы уже можем использовать условные теги, поэтому через него мы можем определить для каких типов страниц подключить скрипт, а для каких нет:

add_action('wp', 'add_my_script_where_it_necessery'); function add_my_script_where_it_necessery() < if( is_single() ) add_action( 'wp_enqueue_scripts', 'my_scripts_method' ); >function my_scripts_method() < $script_url = plugins_url( '/js/newscript.js', __FILE__ ); wp_enqueue_script('newscript', $script_url, array('scriptaculous') ); >
#7 Загружаем в теме скрипт, зависящий от скрипта WordPress

Часто требуется, чтобы перед JavaScript-файлами, поставляемыми с темой оформления, был загружен другой JavaScript-файл. WordPress предоставляет API, позволяющий при регистрации скрипта указать его зависимости. Например, тема с приведённым ниже кодом требует, чтобы перед скриптом custom_script.js была загружена библиотека jQuery:

add_action('wp_enqueue_scripts', 'my_scripts_method'); function my_scripts_method() < wp_enqueue_script('custom-script', get_template_directory_uri() . '/js/custom_script.js', array('jquery') ); >
#8 Как подключить jquery из Google
#9 Удаление версии скрипта или файла стилей из URL

При регистрации скрипта ему указывается версия (текущая версия вордпресса, по умолчанию): /wp-includes/css/dashicons.min.css?ver=4.9 . Такую версию можно вырезать из ссылки на скрипт или файл стилей:

Удаление всех версия у всех скриптов (и стилей):

// Удаляем версию скриптов add_filter( 'script_loader_src', '_remove_script_version' ); // Удаляем версию стилей add_filter( 'style_loader_src', '_remove_script_version' ); function _remove_script_version( $src )

Удаление только версий WordPress:

## удаляет версию WP из преданного URL у скриптов и стилей add_filter( 'script_loader_src', 'hb_remove_wp_version_from_src' ); add_filter( 'style_loader_src', 'hb_remove_wp_version_from_src' ); function hb_remove_wp_version_from_src( $src ) < global $wp_version; parse_str( parse_url( $src, PHP_URL_QUERY ), $query ); if ( ! empty($query['ver']) && $query['ver'] === $wp_version ) < $src = remove_query_arg('ver', $src); >return $src; >

Добавить свой пример

Скрипты, которые идут в комплекте с WP

WordPress регистрирует многие популярные скрипты по дефолту (из коробки), т.е такой скрипт существует по умолчанию в WP. Чтобы добавить такой скрипт на страницу, нужно использовать его идентификатор в wp_enqueue_script( $id ).

Список собран с версии WP 5.2.2

Актуальный на сегодня список можно посмотреть в коде функции wp_default_scripts().

Название ID Зависимость
utils
WP Common common jquery , hoverIntent , utils
wp-a11y jquery
Simple AJAX Code-Kit sack
QuickTags quicktags
ColorPicker (deprecated) colorpicker prototype
editor utils , jquery
clipboard.js clipboard
wp-fullscreen-stub
WordPress AJAX Response wp-ajax-response jquery
wp-api-request jquery
wp-pointer jquery-ui-widget , jquery-ui-position
Autosave autosave heartbeat
Heartbeat heartbeat jquery , wp-hooks
wp-auth-check heartbeat
List Manipulation wp-lists wp-ajax-response , jquery-color
prototype
scriptaculous-root prototype
scriptaculous-builder scriptaculous-root
scriptaculous-dragdrop scriptaculous-builder , scriptaculous-effects
scriptaculous-effects scriptaculous-root
scriptaculous-slider scriptaculous-effects
scriptaculous-sound scriptaculous-root
scriptaculous-controls scriptaculous-root
scriptaculous scriptaculous-dragdrop , scriptaculous-slider , scriptaculous-controls
cropper scriptaculous-dragdrop
jQuery jquery jquery-core , jquery-migrate
jquery-core
jquery-migrate
jQuery UI Core jquery-ui-core jquery
jQuery UI Effects jquery-effects-core jquery
jQuery UI Effects - Blind jquery-effects-blind jquery-effects-core
jQuery UI Effects - Bounce jquery-effects-bounce jquery-effects-core
jQuery UI Effects - Clip jquery-effects-clip jquery-effects-core
jQuery UI Effects - Drop jquery-effects-drop jquery-effects-core
jQuery UI Effects - Explode jquery-effects-explode jquery-effects-core
jQuery UI Effects - Fade jquery-effects-fade jquery-effects-core
jQuery UI Effects - Fold jquery-effects-fold jquery-effects-core
jQuery UI Effects - Highlight jquery-effects-highlight jquery-effects-core
jquery-effects-puff jquery-effects-core , jquery-effects-scale
jQuery UI Effects - Pulsate jquery-effects-pulsate jquery-effects-core
jQuery UI Effects - Scale jquery-effects-scale jquery-effects-core , jquery-effects-size
jQuery UI Effects - Shake jquery-effects-shake jquery-effects-core
jquery-effects-size jquery-effects-core
jQuery UI Effects - Slide jquery-effects-slide jquery-effects-core
jQuery UI Effects - Transfer jquery-effects-transfer jquery-effects-core
jQuery UI Accordion jquery-ui-accordion jquery-ui-core , jquery-ui-widget
jQuery UI Autocomplete jquery-ui-autocomplete jquery-ui-menu , wp-a11y
jQuery UI Button jquery-ui-button jquery-ui-core , jquery-ui-widget
jQuery UI Datepicker jquery-ui-datepicker jquery-ui-core
jQuery UI Dialog jquery-ui-dialog jquery-ui-resizable , jquery-ui-draggable , jquery-ui-button , jquery-ui-position
jQuery UI Draggable jquery-ui-draggable jquery-ui-mouse
jQuery UI Droppable jquery-ui-droppable jquery-ui-draggable
jQuery UI Menu jquery-ui-menu jquery-ui-core , jquery-ui-widget , jquery-ui-position
jQuery UI Mouse jquery-ui-mouse jquery-ui-core , jquery-ui-widget
jQuery UI Position jquery-ui-position jquery
jQuery UI Progressbar jquery-ui-progressbar jquery-ui-core , jquery-ui-widget
jQuery UI Resizable jquery-ui-resizable jquery-ui-mouse
jQuery UI Selectable jquery-ui-selectable jquery-ui-mouse
jQuery UI Selectmenu jquery-ui-selectmenu jquery-ui-menu
jQuery UI Slider jquery-ui-slider jquery-ui-mouse
jQuery UI Sortable jquery-ui-sortable jquery-ui-mouse
jQuery UI Spinner jquery-ui-spinner jquery-ui-button
jQuery UI Tabs jquery-ui-tabs jquery-ui-core , jquery-ui-widget
jQuery UI Tooltips jquery-ui-tooltip jquery-ui-core , jquery-ui-widget , jquery-ui-position
jQuery UI Widget jquery-ui-widget jquery
jQuery Form jquery-form jquery
jQuery Color jquery-color jquery
jQuery Schedule schedule jquery
jquery-query jquery
jquery-serialize-object jquery
jQuery Hotkeys jquery-hotkeys jquery
jquery-table-hotkeys jquery , jquery-hotkeys
jquery-touch-punch jquery-ui-widget , jquery-ui-mouse
jQuery Suggest suggest jquery
imagesloaded
Masonry (native Javascript) masonry imagesloaded
jQuery Masonry jquery-masonry jquery , masonry
ThickBox thickbox jquery
Jcrop jcrop jquery
SWFObject swfobject
moxiejs
Plupload Core plupload moxiejs
Plupload All Runtimes plupload-all plupload
Plupload HTML5 plupload-html5 plupload
Plupload Flash plupload-flash plupload
Plupload Silverlight plupload-silverlight plupload
Plupload HTML4 plupload-html4 plupload
plupload-handlers plupload , jquery
wp-plupload plupload , jquery , json2 , media-models
SWFUpload swfupload
swfupload-all swfupload
SWFUpload Handlers swfupload-handlers swfupload-all , jquery
Threaded Comments comment-reply
JSON for JS json2
Underscore js underscore
Backbone js backbone underscore , jquery
wp-util underscore , jquery
wp-sanitize jquery
wp-backbone backbone , wp-util
revisions wp-backbone , jquery-ui-slider , hoverIntent
imgareaselect jquery
mediaelement jquery , mediaelement-core , mediaelement-migrate
mediaelement-core
mediaelement-migrate
mediaelement-vimeo mediaelement
MediaElement.js (WP 3.6+) wp-mediaelement mediaelement
wp-codemirror
csslint
esprima
jshint esprima
jsonlint
htmlhint
htmlhint-kses htmlhint
code-editor jquery , wp-codemirror , underscore
wp-theme-plugin-editor wp-util , wp-sanitize , jquery , jquery-ui-core , wp-a11y , underscore
wp-playlist wp-util , backbone , mediaelement
zxcvbn-async
Password Strength Meter password-strength-meter jquery , zxcvbn-async
user-profile jquery , password-strength-meter , wp-util
language-chooser jquery
user-suggest jquery-ui-autocomplete
admin-bar
wplink jquery , wp-a11y
wpdialogs jquery-ui-dialog
Word Count word-count
Media Upload media-upload thickbox , shortcode
jQuery HoverIntent hoverIntent jquery
customize-base jquery , json2 , underscore
customize-loader customize-base
customize-preview wp-a11y , customize-base
customize-models underscore , backbone
customize-views jquery , underscore , imgareaselect , customize-models , media-editor , media-views
customize-controls customize-base , wp-a11y , wp-util , jquery-ui-core
customize-selective-refresh jquery , wp-util , customize-preview
customize-widgets jquery , jquery-ui-sortable , jquery-ui-droppable , wp-backbone , customize-controls
customize-preview-widgets jquery , wp-util , customize-preview , customize-selective-refresh
customize-nav-menus jquery , wp-backbone , customize-controls , accordion , nav-menu
customize-preview-nav-menus jquery , wp-util , customize-preview , customize-selective-refresh
wp-custom-header wp-a11y
accordion jquery
shortcode underscore
media-models wp-backbone
wp-embed
media-views utils , media-models , wp-plupload , jquery-ui-sortable , wp-mediaelement , wp-api-request
media-editor shortcode , media-views
media-audiovideo media-editor
mce-view shortcode , jquery , media-views , media-audiovideo
wp-api jquery , backbone , underscore , wp-api-request
react wp-polyfill
react-dom react
moment
lodash
wp-polyfill-fetch
wp-polyfill-formdata
wp-polyfill-node-contains
wp-polyfill-element-closest
wp-polyfill
wp-tinymce-root
wp-tinymce wp-tinymce-root
wp-tinymce-lists wp-tinymce
wp-api-fetch wp-polyfill , wp-i18n , wp-url , wp-hooks
wp-annotations wp-data , wp-hooks , wp-i18n , wp-polyfill , wp-rich-text
wp-autop wp-polyfill
wp-blob wp-polyfill
wp-blocks wp-autop , wp-blob , wp-block-serialization-default-parser , wp-data , wp-dom , wp-element , wp-hooks , wp-html-entities , wp-i18n , wp-is-shallow-equal , wp-polyfill , wp-shortcode , lodash
wp-block-library editor , lodash , wp-api-fetch , wp-autop , wp-blob , wp-block-editor , wp-blocks , wp-components , wp-compose , wp-core-data , wp-data , wp-date , wp-editor , wp-element , wp-html-entities , wp-i18n , wp-keycodes , wp-polyfill , wp-url , wp-viewport , wp-rich-text
wp-block-serialization-default-parser
wp-block-editor lodash , wp-a11y , wp-blob , wp-blocks , wp-components , wp-compose , wp-core-data , wp-data , wp-dom , wp-element , wp-hooks , wp-html-entities , wp-i18n , wp-is-shallow-equal , wp-keycodes , wp-rich-text , wp-token-list , wp-url , wp-viewport , wp-wordcount
wp-components lodash , moment , wp-a11y , wp-api-fetch , wp-compose , wp-dom , wp-element , wp-hooks , wp-html-entities , wp-i18n , wp-is-shallow-equal , wp-keycodes , wp-polyfill , wp-rich-text , wp-url
wp-compose lodash , wp-element , wp-is-shallow-equal , wp-polyfill
wp-core-data lodash , wp-api-fetch , wp-data , wp-deprecated , wp-polyfill , wp-url
wp-data lodash , wp-compose , wp-element , wp-is-shallow-equal , wp-polyfill , wp-priority-queue , wp-redux-routine
wp-date moment , wp-polyfill
wp-deprecated wp-polyfill , wp-hooks
wp-dom lodash , wp-polyfill
wp-dom-ready wp-polyfill
wp-edit-post jquery , lodash , postbox , media-models , media-views , wp-a11y , wp-api-fetch , wp-block-editor , wp-block-library , wp-blocks , wp-components , wp-compose , wp-core-data , wp-data , wp-dom-ready , wp-editor , wp-element , wp-embed , wp-i18n , wp-keycodes , wp-notices , wp-nux , wp-plugins , wp-polyfill , wp-url , wp-viewport
wp-editor lodash , wp-api-fetch , wp-blob , wp-block-editor , wp-blocks , wp-components , wp-compose , wp-core-data , wp-data , wp-date , wp-deprecated , wp-element , wp-hooks , wp-html-entities , wp-i18n , wp-keycodes , wp-notices , wp-nux , wp-polyfill , wp-url , wp-viewport , wp-wordcount
wp-element wp-polyfill , react , react-dom , lodash , wp-escape-html
wp-escape-html wp-polyfill
wp-format-library wp-block-editor , wp-components , wp-editor , wp-element , wp-i18n , wp-keycodes , wp-polyfill , wp-rich-text , wp-url
wp-hooks wp-polyfill
wp-html-entities wp-polyfill
wp-i18n wp-polyfill
wp-is-shallow-equal wp-polyfill
wp-keycodes lodash , wp-polyfill , wp-i18n
wp-list-reusable-blocks lodash , wp-api-fetch , wp-components , wp-compose , wp-element , wp-i18n , wp-polyfill
wp-notices lodash , wp-a11y , wp-data , wp-polyfill
wp-nux wp-element , lodash , wp-components , wp-compose , wp-data , wp-i18n , wp-polyfill , lodash
wp-plugins lodash , wp-compose , wp-element , wp-hooks , wp-polyfill
wp-priority-queue
wp-redux-routine wp-polyfill
wp-rich-text lodash , wp-data , wp-escape-html , wp-polyfill
wp-shortcode wp-polyfill , lodash
wp-token-list lodash , wp-polyfill
wp-url wp-polyfill
wp-viewport wp-polyfill , wp-element , wp-data , wp-compose , lodash
wp-wordcount wp-polyfill

Список получен из глобальной переменной $GLOBALS['wp_scripts'] . Зарегистрированные скрипты могут меняться в зависимости от страницы на которой вы находитесь. В админке список будет больше.

'Jcrop', 'swfobject' => 'SWFObject', 'swfupload' => 'SWFUpload', 'swfupload-degrade' => 'SWFUpload Degrade', 'swfupload-queue' => 'SWFUpload Queue', 'swfupload-handlers' => 'SWFUpload Handlers', 'jquery' => 'jQuery', 'jquery-form' => 'jQuery Form', 'jquery-color' => 'jQuery Color', 'jquery-masonry' => 'jQuery Masonry', 'masonry' => 'Masonry (native Javascript)', 'jquery-ui-core' => 'jQuery UI Core', 'jquery-ui-widget' => 'jQuery UI Widget', 'jquery-ui-accordion' => 'jQuery UI Accordion', 'jquery-ui-autocomplete' => 'jQuery UI Autocomplete', 'jquery-ui-button' => 'jQuery UI Button', 'jquery-ui-datepicker' => 'jQuery UI Datepicker', 'jquery-ui-dialog' => 'jQuery UI Dialog', 'jquery-ui-draggable' => 'jQuery UI Draggable', 'jquery-ui-droppable' => 'jQuery UI Droppable', 'jquery-ui-menu' => 'jQuery UI Menu', 'jquery-ui-mouse' => 'jQuery UI Mouse', 'jquery-ui-position' => 'jQuery UI Position', 'jquery-ui-progressbar' => 'jQuery UI Progressbar', 'jquery-ui-selectable' => 'jQuery UI Selectable', 'jquery-ui-resizable' => 'jQuery UI Resizable', 'jquery-ui-selectmenu' => 'jQuery UI Selectmenu', 'jquery-ui-sortable' => 'jQuery UI Sortable', 'jquery-ui-slider' => 'jQuery UI Slider', 'jquery-ui-spinner' => 'jQuery UI Spinner', 'jquery-ui-tooltip' => 'jQuery UI Tooltips', 'jquery-ui-tabs' => 'jQuery UI Tabs', 'jquery-effects-core' => 'jQuery UI Effects', 'jquery-effects-blind' => 'jQuery UI Effects - Blind', 'jquery-effects-bounce' => 'jQuery UI Effects - Bounce', 'jquery-effects-clip' => 'jQuery UI Effects - Clip', 'jquery-effects-drop' => 'jQuery UI Effects - Drop', 'jquery-effects-explode' => 'jQuery UI Effects - Explode', 'jquery-effects-fade' => 'jQuery UI Effects - Fade', 'jquery-effects-fold' => 'jQuery UI Effects - Fold', 'jquery-effects-highlight' => 'jQuery UI Effects - Highlight', 'jquery-effects-pulsate' => 'jQuery UI Effects - Pulsate', 'jquery-effects-scale' => 'jQuery UI Effects - Scale', 'jquery-effects-shake' => 'jQuery UI Effects - Shake', 'jquery-effects-slide' => 'jQuery UI Effects - Slide', 'jquery-effects-transfer' => 'jQuery UI Effects - Transfer', 'wp-mediaelement' => 'MediaElement.js (WP 3.6+)', 'schedule' => 'jQuery Schedule', 'suggest' => 'jQuery Suggest', 'thickbox' => 'ThickBox', 'hoverIntent' => 'jQuery HoverIntent', 'jquery-hotkeys' => 'jQuery Hotkeys', 'sack' => 'Simple AJAX Code-Kit', 'quicktags' => 'QuickTags', 'iris' => 'Iris (Colour picker)', 'farbtastic' => 'Farbtastic (deprecated)', 'colorpicker' => 'ColorPicker (deprecated)', 'tiny_mce' => 'Tiny MCE', 'heartbeat' => 'Heartbeat', 'autosave' => 'Autosave', 'wp-ajax-response' => 'WordPress AJAX Response', 'wp-lists' => 'List Manipulation', 'common' => 'WP Common', 'editorremov' => 'WP Editor', 'editor-functions' => 'WP Editor Functions', 'ajaxcat' => 'AJAX Cat', 'admin-categories' => 'Admin Categories', 'admin-tags' => 'Admin Tags', 'admin-custom-fields' => 'Admin custom fields', 'password-strength-meter' => 'Password Strength Meter', 'admin-comments' => 'Admin Comments', 'admin-users' => 'Admin Users', 'admin-forms' => 'Admin Forms', 'xfn' => 'XFN', 'upload' => 'Upload', 'postbox' => 'PostBox', 'slug' => 'Slug', 'post' => 'Post', 'page' => 'Page', 'link' => 'Link', 'comment' => 'Comment', 'comment-reply' => 'Threaded Comments', 'admin-gallery' => 'Admin Gallery', 'media-upload' => 'Media Upload', 'admin-widgets' => 'Admin widgets', 'word-count' => 'Word Count', 'theme-preview' => 'Theme Preview', 'json2' => 'JSON for JS', 'plupload' => 'Plupload Core', 'plupload-all' => 'Plupload All Runtimes', 'plupload-html4' => 'Plupload HTML4', 'plupload-html5' => 'Plupload HTML5', 'plupload-flash' => 'Plupload Flash', 'plupload-silverlight' => 'Plupload Silverlight', 'underscore' => 'Underscore js', 'backbone' => 'Backbone js', ]; echo "#### Скрипты, которые идут в комплекте с WP \n\n"; echo "Название | ID | Зависимость \n"; echo "-------- | ------ | ----- \n"; foreach( $scripts->registered as $item )< $label = isset($names[ $item->handle ]) ? $names[ $item->handle ] : ' '; $deps = $item->deps ? '`'. implode('`, `', $item->deps) .'`' : ' '; $src = $item->src ? esc_attr( $item->src ) : ''; echo "$label | $item->handle | $deps \n"; > exit; > > -->

Изменения

В версии 3.5 WordPress изменил положение о минимизации скриптов и CSS стилей. До этого минимизированные файлы имели расширения: .js и .css соответственно, а не минимизированные .dev.js и .dev.css . Теперь, минимизированные файлы имеют расширение: .min.js и .min.css , а обычные .js и .css .

Заметки

  • Смотрите: WP_Dependencies::add()
  • Смотрите: WP_Dependencies::add_data()
  • Смотрите: WP_Dependencies::enqueue()

Список изменений

С версии 2.1.0 Введена.
С версии 6.3.0 The $in_footer parameter of type boolean was overloaded to be an $args parameter of type array.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *