Добавить JavaScript на страницу WordPress

(или Почему не работает JavaScript в WordPress)

Пока я пытался добавить свой сервис по скачиванию превьюшки и тегов видео c youtube. Я наткнулся на проблему с добавлением скриптов на страницу. Сразу в поиске нашлись решения использующие произвольные поля, через правки файла functions.php, редактируя который без дочерней темы, мы рискуем потерять изменения после обновления темы. Одним словом это все больше было похоже на костыли, а не решение задачи. Возможно раньше меня это и устроило бы, но я решил еще покопать интернет и таки нашел элегантное решение, которое решил сохранить себе и пустить в массы.

А теперь по делу. Если писать в записи WordPress скрипт используя

<script> … </script>

он работать не будет так как при публикации в нём неизбежно всплывают коды, которые делают неработоспособным весь код.

Выход из ситуации есть:

Либо не использовать в коде переход на новую строку и писать всё в одну строку
Либо скрипт писать во внешнем файле и просто подключить его в записи
Подключить скрипт можно следующим образом:

Чтобы браузер не кэшировал скрипт:

<script charset="utf-8" type="text/javascript" src="//site.ru/wp-content/themes/mytheme/js/myscript.js?r=" + Math.random();></script>

Чтобы браузер мог кэшировать скрипт:

<script charset="utf-8" type="text/javascript" src="//site.ru/wp-content/themes/mytheme/js/myscript.js"></script>

Если вставить этот код в начале записи — он выполнится до создания элементов и текста записи

Если вставить его в конце, то сначала полностью прогрузится страниза записи, а затем выполнится прикреплённый скрипт.

P.S.: Кодировка скрипта должна быть UTF-8 (без BOM)

Спасибо источнику, в момент моего поиска он был на втором месте в Google. Мб пропихну на первое 🙂

Оставьте комментарий

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