Я пытаюсь создать маркеры на карте через ajax на тему wp. После некоторой борьбы я узнал, что я не могу использовать какой-либо php-файл для получения данных через ajax, я должен использовать файл admin-ajax.php.Wordpress Frontend Ajax с wp_localize_script Ошибка: ajaxurl не определен
Соответственно для многих примеров, это мой код
в functions.php
add_action('wp_enqueue_scripts', 'add_frontend_ajax_javascript_file');
function add_frontend_ajax_javascript_file()
{
wp_localize_script('frontend_ajax', 'frontendajax', array('ajaxurl' => admin_url('admin-ajax.php')));
wp_enqueue_script('ajax_custom_script', get_stylesheet_directory_uri() . '/includes/ajax-javascript.js', array('jquery'));
}
add_action('wp_ajax_get_post_information', 'get_post_information');
add_action('wp_ajax_nopriv_get_post_information', 'get_post_information');
function get_post_information()
{
$get_this= $_GET['this'];
$get_that= $_GET['that'];
...my select...
echo json formatted data
}
Файл JS загружается и работает, он делает другие вещи перед АЯКС вызова, где он останавливается на ошибка в этой строке:
$.post({
url:frontendajax.ajaxurl,
{
action: 'get_post_information',
data: data
},
success: function(response) {
Но я всегда ту же ошибку:
Ссылка Ошибка: frontendajax.ajaxurl не определен
где моя ошибка?
PS: Я использую get_stylesheet_directory_uri(), потому что я в дочерней теме.
спасибо, я не понимал, что мне нужно использовать ту же ручку! Чтобы заставить его работать, мне также пришлось передать имя функции действия вместе с данными (я обновил свой вопрос) – bluantinoo