Jestem zaznajomiony z używaniem ajax w zwykły sposób z jQuery.
Grałem w to od jakiegoś czasu, ale nie rozumiem, co Wordpress musi zrobić, aby działało ...
To, co tu mam, pochodzi z samouczka lub artykułu.
Jest to functions.php (w motywu dziecka):Jak ładować Ajax w Wordpressie
// code to load jquery - working fine
// code to load javascript file - working fine
// ENABLE AJAX :
function add_ajax()
{
wp_localize_script(
'function',
'ajax_script',
array('ajaxurl' => admin_url('admin-ajax.php')));
}
$dirName = get_stylesheet_directory(); // use this to get child theme dir
require_once ($dirName."/ajax.php");
add_action("wp_ajax_nopriv_function1", "function1"); // function in ajax.php
add_action('template_redirect', 'add_ajax');
Sam jQuery się ładuje i działa poprawnie.
Próbowałem kilka podstawowych ajax jak następuje:
jQuery(document).ready(function($){
$('a.link').click(function(){
$.ajax({
url: ajax_script.ajaxurl,
data: ({action : 'function1'}),
success: function(data){
$('#result').html(data);
}
});
return false;
});
});
Poza tym, nie wiem, jak mogę sprawdzić, czy to jest jeszcze załadowany prawidłowo zacząć ...
Przydałaby się tutaj jakakolwiek pomoc.
EDIT:
w Firebug ten błąd:
ReferenceError: ajax_script is not defined
url: ajax_script.ajaxurl,
http://stackoverflow.com/questions/10807368/how-to-use -wordpress-functions-in-a-ajax-call – zod