Intereting Posts
Есть ли способ отобразить меню, используя тег ol вместо стандартного тега ul? При регистрации пользователя, если отправлено приветственное письмо, добавьте сообщение с новым пользователем как автора Я получаю 404, когда я пытаюсь войти в систему с тех пор, как изменил постоянную ссылку Пользовательский тип URL-адреса переписки Проверка того, установлен ли атрибут woocommerce Будет ли я видеть производительность, если я использую собственные API-вызовы, такие как get_the_title () вместо $ post-> post_title? Каков канонический способ ссылки на страницы? Как изменить элемент <header> на всех страницах? Возвращаемое значение add_filter Автоматизация ежедневного блога изображений? Как добавить баннеры в боковой панели моей темы Как заставить file_get_contents работать в wordpress WordPress – отзывчивый navbar не работает Sanitize html, где дезинфицировать Auto get_header и get_footer для каждого шаблона?

WP Plugin Запуск перед jQuery

У меня проблемы с jQuery и плагином, ошибка консоли говорит, что jQuery не определен. То, что я не понимаю, это только терпит неудачу, когда я загружаю его на рабочий сервер, на моей локальной установке dev он отлично работает.

ReferenceError: jQuery не определен.

Код плагина:

add_filter( 'wp_footer', 'enqueue_footer_scripts', 9); add_filter( 'wp', 'enqueue_styles', 11); function enqueue_footer_scripts() { wp_register_script( 'sjs', plugins_url('/js/sjs.js', __FILE__), array('jquery')); wp_enqueue_script( 'sjs' ); echo "<script>jQuery(document).ready(function ($) { $('p').sJS();});</script>"; } function enqueue_styles() { wp_register_style('sjcss', plugins_url('/css/sjs.css', __FILE__), false, '2.1'); wp_enqueue_style('sjcss'); } 

Solutions Collecting From Web of "WP Plugin Запуск перед jQuery"

Ваш код не работает из-за фундаментальной проблемы с упорядочением.

Вы подключаетесь к wp_footer. Затем вы регистрируете скрипт и завершаете его. Наконец, вы повторяете код.

Вот в чем проблема: действие enqueueing скрипта не вызывает эхо кода скрипта сразу. Enqueueing делает только то, что он говорит, он устанавливает, что сценарий будет добавлен к выходу страницы позже. Итак, ваше эхо кода скрипта здесь слишком рано.

В частности, скрипты, заключенные в очередь в нижнем колонтитуле, встречаются в вызове wp_print_footer_scripts, который подключен к действию wp_footer с приоритетом 20. Таким образом, вам нужно поставить в очередь до этого, но после этого распечатайте свой код сценария.

Так что сделайте новую функцию. Подключите его к действию wp_print_footer_scripts. Затем переместите свой код эха в это, но оставьте код очереди, где он есть.

Прямо из Кодекса это как загрузить скрипт :

 function my_scripts_method() { wp_enqueue_script( 'social-highlighter-js', plugins_url('/js/social-highlighter.js', __FILE__), array('jquery')); } add_action( 'wp_enqueue_scripts', 'my_scripts_method' ); 

Затем распечатайте свои пользовательские сценарии инициализации в нижнем колонтитуле:

 add_filter( 'wp_print_footer_scripts', 'my_wp_print_footer_scripts' ); function my_wp_print_footer_scripts() { echo "<script>jQuery(document).ready(function ($) { $('p').socialHighlighterShare();});</script>"; }