Intereting Posts
Как настроить результаты поиска в теме Bones? Как сделать условие, основанное на значении настраиваемых полей? Включение пользовательской метассылки с запросом posts_where WordPress Custom Post Type Admin Страница действительно медленная Я добавляю новый класс в свой тег body, если зарегистрированный пользователь является подписчиком, нужна помощь add_filter несколько раз с различными функциями аддона? Обработка столкновений компонентов jQuery Как взломать плагин YARPP для поиска связанных сообщений для пользовательского типа сообщений? Пользовательский вход в ReCaptcha Как переупорядочить (поп и толчок) элементы из WP_Query? Rewrite rule, чтобы преффицировать две переменные $ _GET, в то время как в новой конечной точке со страницы Appery.io и WordPress htaccess переписать, добавив сегмент к URL-адресу Почему нет сообщений, несмотря на то, что я, по-видимому, исправил ошибку? Создание раскрывающегося списка из пользовательского типа сообщения

Как передать шаблон url в javascript в области ADMIN моей темы?

Мне нужно передать путь к файлу php (находящемуся в папке в моей теме) в файл JS, который используется в моей области администрирования, но я понятия не имею, как это сделать.

То, что я пытаюсь сделать, – это построить страницу, в которой выбор некоторых параметров в форме передаст значение ввода скрипту php через ajax. Но поскольку JS является клиентской стороной, я не знаю, как указать на правильное местоположение.

Я пробовал тестировать, используя это:

<?php wp_enqueue_script( 'some_handle' ); $translation_array = array( 'some_string' => __( 'Some string to translate' ), 'a_value' => '10' ); wp_localize_script( 'some_handle', 'object_name', $translation_array ); wp_enqueue_script("admin", $adminDir."js/admin.js", false, "1.0"); ?> 

с этим в моем admin.js:

  console.log(object_name.some_string); 

Но консоль просто читает:

 ReferenceError: object_name is not defined 

Solutions Collecting From Web of "Как передать шаблон url в javascript в области ADMIN моей темы?"

Если вы хотите использовать переменные из сценария admin.js, и вы хотите быть уверены, что это работает, вам нужно

  1. используйте в качестве дескриптора для wp_localize_script дескриптор скрипта, который должен использовать данные
  2. вызовите wp_localize_script после того, как этот скрипт установлен в очередь

     wp_enqueue_script( 'some_handle' ); wp_enqueue_script("admin", $adminDir."js/admin.js", false, "1.0"); $translation_array = array( 'some_string' => __( 'Some string to translate' ), 'a_value' => '10' ); wp_localize_script( 'admin', 'object_name', $translation_array ); 

Используя приведенный выше код и console.log(object_name.some_string); вы увидите переведенную строку на консоли.

Подробнее о wp_localize_script о Codex.

Вы можете сначала зарегистрировать скрипт и поставить его в очередь после wp_localize_script .

 wp_register_script( 'script_handle', $adminDir."js/admin.js", false, '1.0' ); //register script $translation_array = array( 'some_string' => __( 'Some string to translate' ), 'a_value' => '10' ); wp_localize_script( 'script_handle', 'object_name', $translation_array ); wp_enqueue_script("script_handle"); //enqueue 

Ссылка на функцию: wp_localize_script