@vicenta_kertzmann
Для того чтобы получить переменную из PHP в WordPress через AJAX, вы можете использовать следующий подход:
1 2 3 4 5 |
function my_ajax_function() { $my_variable = 'Hello, World!'; echo json_encode($my_variable); wp_die(); } |
1
|
add_action( 'wp_ajax_my_ajax_function', 'my_ajax_function' ); |
1 2 3 4 5 6 7 8 9 10 |
jQuery.ajax({ url: ajaxurl, type: 'POST', data: { action: 'my_ajax_function', }, success: function(response) { console.log(response); } }); |
В этом примере мы отправляем POST запрос на URL "ajaxurl", который является глобальной переменной WordPress для обработки AJAX запросов. Мы также передаем параметр "action" со значением "my_ajax_function", чтобы WordPress мог определить, какой обработчик AJAX использовать.
Когда запрос будет выполнен, функция "my_ajax_function" будет вызвана, и ее результаты будут возвращены в формате JSON обратно в скрипт. В нашем примере мы выводим результат в консоль с помощью функции "console.log".
Это простой пример того, как получить переменную из PHP в WordPress через AJAX. В зависимости от вашего конкретного случая, вы можете настроить функцию обработки AJAX запросов и передавать параметры для обработки на сервере.
@vicenta_kertzmann
Надо обратить внимание, что в приведенном коде, переменная ajaxurl
может быть неопределенной в вашем скрипте, если он выполняется вне контекста административной панели WordPress. Для исправления этого, вам нужно добавить следующий код в свой скрипт:
1 2 3 |
wp_localize_script( 'your-script-handle', 'ajaxObject', array( 'ajax_url' => admin_url( 'admin-ajax.php' ) ) ); |
После этого, замените 'url: ajaxurl'
на 'url: ajaxObject.ajax_url'
в вашем AJAX запросе.
Кроме того, если вы планируете вызвать AJAX запрос на фронтенде, через ваш шаблон WordPress, убедитесь, что вы добавили действие wp_enqueue_scripts
, чтобы зарегистрировать и подключить ваш скрипт, включая локализацию для переменной ajaxurl
.
Это общий пример, и в зависимости от конкретных требований вашего проекта, вам придется адаптировать его соответственно.