Не работают скрипты wordpress

Перестал запускаться Javascript со страницы сайта WordPress

Коварный Javascript.

Итак, после автоматического обновления версии Вордпресс до 4.1.6 (23.07.2015) на моем блоге нарушились некоторые функции.

Перестал запускаться Javascript со страницы сайта WordPress.

Пропали виджеты Твиттера, установленные непосредственно на страницах и исчезли окна просмотра презентаций на сайте, организованные с помощью таких скриптов.

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

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

Но у меня сделан особый упор на трансляцию информации из Твиттера в установленных виджетах.

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

Мне очень нравятся такие виджеты. Они, как свежая пресса на блоге. Придают ему своеобразную изюминку. Показывают, что автор работает каждый день, даже если сегодня и не вышла в свет его новая статья.

Поэтому исчезновение виджетов Твиттера было для меня болезненным ударом, и мне хотелось как можно быстрее их восстановить.

Я стала искать способы восстановления сайта после неудачного обновления Вордпресс, которое нарушило его функции.

И движок и плагины я обновила до последних версий (4.2.3 WordPress на тот момент), но это не помогло.

Тогда я описала свои возникшие проблемы на форумах WordPress.org . О чем более подробно рассказала в предыдущей публикации.

Как удалось временно решить проблему?

Я заметила, что на моем запасном сайте, где был установлен виджет Твиттера в боковой колонке (сайдбаре) он благополучно запускался. При этом открывался и виджет Твиттера, расположенный непосредственно на странице сайта в тексте статьи.

Но стоило только удалить виджет Твиттера из боковой колонки, как виджет в статье тут же переставал работать.

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

И все заработало. Виджет в сайдбаре каким-то образом стимулировал запуск Javascript и со страницы сайта WordPress.

Но заработало это только в компьютерной версии сайта. А в мобильной версии виджеты Твиттера по-прежнему не разворачивались. Там этот фокус не срабатывал.

Но, учитывая то, что мой сайт просматривают с мобильных устройств только около 10% посетителей, согласно статистике Google Analytics, я решила, что это не такой уж и плохой временный выход из ситуации.

Как увидеть обзор посещений с мобильных устройств на Google Analytics.


Можно оставить пока так, и параллельно искать дальше способ, как правильно запустить Javascript со страницы сайта.

Я вспомнила, что для просмотра презентаций непосредственно на сайте, например, на сервисе authorstream.com мне предлагали скачать специальный плагин для Вордпресс.

Я скачала и установила этот плагин Javascript Per Page на тренировочном блоге. Но пользоваться им оказалось не очень комфортно. Нужно создавать файл с определенным именем, добавлять туда свой скрипт и закачивать его на хостинг.

Тогда я нашла еще один плагин для запуска Javascript со страницы Вордпресс Zia3-JS-CSS . С ним работать оказалось более удобно, так как на хостинг закачивать уже ничего не требуется, а под каждой статьей при редактировании появляется специальное окошко, куда можно поместить свой скрипт.

Но и с этим плагином у меня на запасном блоге не заладилось. Презентация то запускалась, то нет. Через раз.

Помогло очередное автоматическое обновление WordPress.

Однако, пока я с этим экспериментировала, подоспела следующая версия WordPress 4.2.4 (04.08.2015), в которой разработчики учли пожелания вебмастеров с форума WordPress.org.

Мой основной блог автоматически обновился, а запасной, где я установила плагин, запрещающий автоматическое обновление, — нет (плагин-таки сработал). О том, как отключить автоматическое обновление WordPress более подробно читайте предыдущую статью.

Разработчики WordPress исправили ошибку, и все чудесным образом снова заработало на моем сайте.
Ура! Здравый смысл победил.

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

Вот так я неожиданно для себя поучаствовала в отладке очередной новой версии WordPress.

После того, как проблема решилась, я изменила статус своего запроса на форуме WordPress.org с нерешенного на решенный.И поблагодарила разработчиков WordPress.

Как выяснилось, можно было всего лишь заменить две косых в коде скрипта на косую и звездочку. И все бы заработало.

Вот они превратности программирования.

Какой он все-таки коварный, этот программный код.

Ну, а форумы WordPress.org стоит периодически посещать.

Будете в курсе проблем. По крайній мере, после выхода очередной новой версии WordPress 4.2.4 на форумах опять появилось множество сообщений, типа: «Караул, мой сайт сломался!»

Хорошо, что это уже не у меня!

А Вы теперь знаете, по какому пути следует идти, если возникнут проблемы на сайте после очередного обновления версии WordPress.

Источник

WordPress.org

Русский

Поддержка → Проблемы и решения → После обновления WP 5.5.1 не работают скрипты

После обновления WP 5.5.1 не работают скрипты

После последнего обновления WP слетели все js, перестал срабатывать ajax, еще на одном сайте перестали подгружаться кастомные скрипты, пришлось откатить все назад. Подскажите, в чем может быть ошибка, диспетчер выдает какую-то ошибку загрузки jquery, но с чем это связано, я не понимаю.

В WordPress 5.5 начат процесс обновления библиотеки jQuery,
см — https://make.wordpress.org/core/2020/06/29/updating-jquery-version-shipped-with-wordpress/
это может создавать проблемы со старыми плагинами и темами, зависящими от старой версии.Для начала, убедитесь что у вас есть резервная копия сайта, созданная до обновления WordPress. Возможно, если вы не найдете решения, вам придется откатить сайт на состояние до обновления.
(Или вы правда ринулись обновляться сразу же после выхода новой версии даже не создав бэкап?)

1. Проверьте обновления всех плагинов и тем. Установите их, если обновления есть.

2. Установите и активируйте плагин восстановления совместимости со старой версией jQuery
https://ru.wordpress.org/plugins/enable-jquery-migrate-helper/

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

3. Сообщите авторам старых плагинов о необходимости обновления.
Используйте сообщения отладки полученные от плагина Enable jQuery Migrate Helper

4. Не забывайте проверять и устанавливать обновления плагинов и тем (или просто включите автообновления для них)

Источник

WordPress. Скрипты подключились, но не работают

Скрипты, которые я подключил в файле functions.php подключились успешно, но отказываются работать. В чем проблема, я собственно не понимаю.

Скриншот файла functions.php:

2 ответа 2

Знак $ не используется в WordPress, вместо это используйте ‘jQuery’.

Для того, чтобы использовать $:

1) и скрипты загружаются в header используйте такое решение

2) и скрипты загружаются в footer, используйте такое решение

По умолчанию, jQuery в WordPress запускается в compatibility mode.

Оборачивайте ваш код в .js файле таким образом:

и тогда внутри можете использовать $.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками javascript wordpress или задайте свой вопрос.

Похожие

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

Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.

дизайн сайта / логотип © 2021 Stack Exchange Inc; материалы пользователей предоставляются на условиях лицензии cc by-sa. rev 2021.10.15.40479

Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.

Источник

WordPress.org

Русский

Не могу подключить JS

Здравствуйте! Работаю с Contact Form 7, на локальном сервере, пытаюсь добавить JS код для перехвата события Sumbit формы.
Смотрел множество с сайтов с примерами, но так и не получилось реализовать.
В директорию с файлом funtions.php добавил js файл с названием customscript.js со следующим кодом:

в файл Functions вставил следующий код, который не заработал:

Пробовал также следующий вариант, который также не заработал:

Подскажите, пожалуйста, где я допустил ошибку. Спасибо большое!

  • Тема изменена 1 год, 5 месяцев назад пользователем Yui . Причина: please use CODE button for code formatting

Работаю с Contact Form 7, на локальном сервере

WP и всё, что ему сопутствует правильно работает только там, где должно работать

@zoltsmaster Поясните, пожалуйста, а почему именно не должно работать? Плагин скачан с сайта WordPress, поставлен на чистую свежую сборку WordPress, в документации плагина (https://contactform7.com/dom-events/) описано, что такие способы возможны. Если Вы про локальный сервер, почему оно не должно на нём работать?

  • Ответ изменён 1 год, 5 месяцев назад пользователем yalaby .
  • Ответ изменён 1 год, 5 месяцев назад пользователем yalaby .

@zoltsmaster добавил тот же код на хостинг, разницы нет.

этот код рекомендуют прописывать в footer, ибо при загрузке в хидере он не может найти форму CF7 (она еще не загрузилась) и поэтому у вас ничего не работает.

вставил следующий код, который не заработал

В чём это выражается?

Если скрипт customscript.js не появился в исходном коде страницы — то да, проблема в этом коде.

Если появился, но не привёл к желаемому результату — возможно, скрипт просто загружается раньше, чем выводится форма, как заметили выше.

У wp_enqueue_script() есть параметр $in_footer (пятый по счёту) — попробуйте задействовать его.

Если Вы про локальный сервер, почему оно не должно на нём работать?

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

@flector @sergeybiryukov Благодарю Вас за ответы!
попробовал в customscript.js написать следующий код для упрощения и отвязки от отслеживания CF7:

Однако, при загрузке страницы ничего не поменялось, алерт не выходит, а в отладчике своего скрипта не нахожу, соответственно, я неправильно его объявил. Грешу на строчку, но не уверен, потому что пытался прописать абсолютный путь, тоже не помогло
get_template_directory_uri() . ‘/customscript.js’,

_________________________________________
Пока писал сообщение попытался ввести следующий код в файл functions.php, если вы посмотрите на него, увидите, что я все параметры указал, в том числе внёс код в footer (если быть точным, то в файл storefront-functions.php т.к. работаю с темой storefront):

теперь мой скрипт появился в отладчике, однако Алерта так и нет
кстати, абсолютный путь указан уже не к локальному серверу, потому что я решил решать всё прямо на хостинге
______________________________________________________________
Далее я решил исправить свой JS код

написал в customscript.js просто строку
alert («fire!»);

и это дело заработало.

и тут я понял что объявлял функцию, но не вызывал её. Следующий код полностью заработал

После чего я решил попробовать вернуть следующую строку вместо абсолютного имени файла JS:

и код перестал работать. В общем, нужно указывать абсолютный путь. Видимо, я не до конца разобрался в синтаксисе get_template_directory_uri().

P.S. Расписал это всё как я делал для того, чтобы если кто то столкнётся с такой же проблемой он быстрее решил её. Благодарю всех причастных!)

  • Ответ изменён 1 год, 5 месяцев назад пользователем yalaby .
  • Ответ изменён 1 год, 5 месяцев назад пользователем yalaby .
  • Ответ изменён 1 год, 5 месяцев назад пользователем yalaby .

Источник

WordPress.org

Русский

Поддержка → Проблемы и решения → Не работает обращение к jquery

Не работает обращение к jquery

Здравствуйте! Для вывода результата работы скрипта на многих сайтах использую такой решение: вставляю в пост с помощью плагина следующий код:

На других моих сайтах, код работает, по клику результаты работы скрипта выводится в div без перезагрузки страницы.
Я уж добавлял , хотя, вроде бы, jquery подключен в движке… Не работает.
Может Woody ad snippets (PHP snippets | Insert PHP) виной, ранее я использовал другой плагин для вставки исполняемого кода? Но вроде все корректно вставляется. Буду благодарен за любые советы.
PS Прошу прощения, проблема решена. Дело было в банальной невнимательности.

  • Тема изменена 1 год, 2 месяца назад пользователем Wic_ .
  • Тема изменена 1 год, 2 месяца назад пользователем Wic_ .

В WordPress 5.5 начат процесс обновления библиотеки jQuery,
см — https://make.wordpress.org/core/2020/06/29/updating-jquery-version-shipped-with-wordpress/
это может создавать проблемы со старыми плагинами и темами, зависящими от старой версии.Для начала, убедитесь что у вас есть резервная копия сайта, созданная до обновления WordPress. Возможно, если вы не найдете решения, вам придется откатить сайт на состояние до обновления.
(Или вы правда ринулись обновляться сразу же после выхода новой версии даже не создав бэкап?)

1. Проверьте обновления всех плагинов и тем. Установите их, если обновления есть.

2. Установите и активируйте плагин восстановления совместимости со старой версией jQuery
https://ru.wordpress.org/plugins/enable-jquery-migrate-helper/

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

3. Сообщите авторам старых плагинов о необходимости обновления.
Используйте сообщения отладки полученные от плагина Enable jQuery Migrate Helper

4. Не забывайте проверять и устанавливать обновления плагинов и тем (или просто включите автообновления для них)

Источник

Читайте также:  Не работает порт для локального подключения
Оцените статью