Главная > Сеть > Как вставить javascript в запись или страницу WordPress без плагина

Как вставить javascript в запись или страницу WordPress без плагина

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

 Отличие теперешнего кода было в том, что это был javascript не сгенерированный, а самописный на основе API яндекс карт. Просмотр HTML кода страницы показал, что код присутствует, но WordPress запенил переносы строк на <p>, порезал квадратные скобки. В общем код стал неработоспособен.

Естественно первым желанием было, поставить какой ни будь плагин, позволяющий вставлять JS в текст новости или страницы. Первый скачанный плагин в режиме создания записи отображал кнопку, нажав на которую можно было вставить javascript в специальное окошко. Не понравилось, по тому, что плагин размещает скрипт в заголовке станицы и видимо использует для этого отдельную таблицу в базе с привязкой к постам. Зачем нагружать базу лишним запросом, если можно хранить скрипт в тексте страницы.

Что делать, если после очередного обновления WordPress, плагин перестанет работать?? Ждать обновления без нужных скриптов? Если не обновится ковырять его самому? В общем совсем не вариант. Второй плагин был в этом плане лучше. Javascript вставляется прямо в текст страницы, между специальными хэштэгами. Но к сожалению тоже не заработало. Видимо работает он по такому принципу, что  преобразует код повторно (обратно) перед выводом. Удаляя изменения сделанные WordPress в Javascript. К сожалению, обратные изменения он произвел не в полном объеме, код не работал. Опять же плагин однажды, может перестать работать.

Вставить код Javascript в запись WordPress можно без плагина.

Для этого нужно код скрипта поместить в отдельный текстовый файл и сохранить его. Текстовый файл должен быть в кодировке UTF-8 без BOM.

 javascript в WordPress

Вставка javascript в запись или страницу WordPress

<script> до текста скрипта и </script> после, в файле писать не нужно.

В нужном месте страницы вставляем подгрузку этого файла
<script charset="utf-8" type="text/javascript" src="//site.ru/js/ymap.js"></script>

Запись должна быть в одну строку, без переносов на новую с помощью Enter

Вот и все. Javascript яндекс карт прекрасно работает на сайте без плагинов.

Для этого в код станицы вставлена следующая запись

<script src="http://api-maps.yandex.ru/1.1/index.xml?key=api_key&#038;modules=pmap&#038;wizard=constructor" type="text/javascript"></script>
<script charset="utf-8" type="text/javascript" src="//site.ru/js/ymap.js"></script>


Метки: ,

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