Intereting Posts
Присвоение меток сообщению с переднего конца с использованием плагина tag-it jquery UI Меню администратора – Меню имени отличается от первого Подменю Как сделать формы WordPress безопасными (HTTPS) WP_Query с аргументом "offset" Изменение роли пользователя при утверждении по почте Показать сообщение на главной странице с эскизом Разработка плагинов для добавления таких компонентов, как JqueryUI Включить страницы шаблонов в другой шаблон? Как я могу разрешить пользователям редактировать текст, который будет отображаться на странице архива типа персонализированного типа? Перенаправление на woocommerce checkout после добавления в корзину товара уже в корзине Может ли параметр настройки настроек настроить другие настройки? Почему WP не обновляет мой файл .htaccess? Если заявление для калорий Ограничить выбор тега в предопределенный список Как отображается этот контент?

Добавить скрипт на страницу в определенном месте в wordpress

Обычно мы используем wp-equeue-script для добавления скриптов на страницу внутри заголовка или раздела тела, но как насчет того, хочу ли я вставить файл сценария в определенном месте (например, в середине страницы)?

Кроме того, возможно ли генерировать динамические скрипты?

Например, http://xx.com/xx.js?query=xxx который будет возвращать разные сценарии без запроса?

Чтобы ответить на ваш первый вопрос, вы всегда можете добавить <script> внутри ваших файлов шаблонов, где бы вы ни хотели, разрешили бы это? Или, альтернативно, добавьте функцию <?php add_my_script(); ?> <?php add_my_script(); ?> где-то в ваших файлах шаблонов, которые вы помещаете в functions.php и делает еще несколько проверок, чтобы определить, хотите ли вы там сценарий в этом месте и добавить его.

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

Чтобы ответить на ваш второй вопрос, да, вы можете, на него ответили раньше. https://stackoverflow.com/questions/3943198/parse-a-javascript-file-through-php

Поэтому не вызывайте файл .js, вызывайте .php-файл, который отображает ваш скрипт. просто убедитесь, что вы используете header("Content-Type: application/javascript"); и какую бы логику вы ни хотели

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

Чистый способ переместить переменные в файл js в зависимости от запроса вашей страницы: wp_localize_script (), чтобы внести локализацию или специальный запрос в файл js.

  // Register the script wp_register_script( 'some_handle', 'path/to/myscript.js' ); // Localize the script with new data $translation_array = array( 'some_string' => __( 'Some string to translate', 'plugin-domain' ), 'a_value' => '10' ); wp_localize_script( 'some_handle', 'object_name', $translation_array ); // Enqueued script with localized data. wp_enqueue_script( 'some_handle' ); 

в скрипте js вы сможете получить переменные

 <script> // alerts 'Some string to translate' alert( object_name.some_string); </script> 

Подробнее о кодексе wp_localize_script

Если вы хотите загрузить другой файл js в зависимости от запроса, вам нужно добавить оператор php в вызов функции с действием wp_enqueue_scripts (остерегайтесь окончания S).