Intereting Posts
Как очистить кеш без плагина Добавление rel = "next" & rel = "prev" для разбитых на страницы архивов Как переопределить the_excerpt, чтобы он отображал полный контент? Как получить vim для автозаполнения функций WordPress API? Создание плагина, доступного только в интерфейсе для входа в супер-администратор WP E-commerce: отображение 3 случайных товаров из текущей категории при просмотре продукта WordPress получает разбиение на страницы на wpdb get_results Иерархия типа сообщения wordpress, как запросить таблицу wp_options специальные символы после сохранения проекта, интерпретируемого как Regex для удаления расширения файла WordPress не отображает все сообщения в базе данных Как создать сложную структуру страницы Как правильно отключить ПЕРЕСМОТРЫ и AUTOSAVE для всего сайта и, возможно, для персонализированного типа сообщений У меня появляется сообщение об ошибке после ввода в моем домене. Как мне вернуть сайт

wp_localize_script, переменная не определена в jquery

Я пытаюсь загрузить сообщение с помощью Ajax.

functions.php :

 function my_action_callback() { wp_localize_script('jscustom', 'ajax_custom', array( 'ajaxurl' => admin_url('admin-ajax.php') )); wp_enqueue_script('jscustom'); } add_action('wp_ajax_my_action', 'my_action_callback'); 

Код jQuery в custom.js :

 jQuery(window).load(function() { var morebutton = jQuery('#load-more'), archive = morebutton.rel, deftext = morebutton.text(), page = 1; morebutton.click(function(e){ e.preventDefault(); page++; morebutton.text(ajax_custom.loading); jQuery.post(ajax_custom.ajaxurl, {action:'load_more', page:page, archive:archive}, function(data){... 

Когда я нажимаю кнопку «загрузить больше», я получаю сообщение об ошибке:

ReferenceError: ajax_custom не определен

Что не так?

Solutions Collecting From Web of "wp_localize_script, переменная не определена в jquery"

wp_localize_script следует называть ПОСЛЕ wp_enqueue_script :

ВАЖНО !: wp_localize_script () ДОЛЖНО вызываться после того, как скрипт, к которому он привязан, был зарегистрирован или зарегистрирован. Он не помещает локализованный скрипт в очередь для последующих скриптов.

Исправьте его в своей функции:

 function my_action_callback() { wp_enqueue_script('jscustom'); // I assume you registered it somewhere else wp_localize_script('jscustom', 'ajax_custom', array( 'ajaxurl' => admin_url('admin-ajax.php') )); } 

Вы всегда можете проверить свою страницу <head> если увидите свою переменную.