I use ajax with jquery and when I tried to display the result in popup.
Then alert always displays 0
success : function(results) {
alert(results); }
EDIT :
var dataToSend = {
action:"ACTION_NAME",
id : "12"
};
url_action = 'http://www.______.com/wp-admin/admin-ajax.php';
$.ajax({
url: url_action,
type:'POST',
data: dataToSend,
success:function(results)
{
alert(results);
}
});
Try to add die();
or exit();
at the very last line of the function.
May be you are trying without login. so you need to use this action.
add_action('wp_ajax_nopriv_my_action', 'my_action_callback');
you will get response. :)
I had a similar issue with admin-ajax.php returning 0, even i had die().
My problem was that the add_action was declared in a file not loaded default by plugin.
Anyway, if you have problem also check in browser what __.com/wp-admin/admin-ajax.php?action=youraction returns.
Found it.
It need to add die();
before the end of my own ajax function in function.php
.
Because there is one line of script in admin-ajax.php
after my own ajax_action that says: die('0'); So we need to die() script before die('0').