wp_mail() not sending emails with ajax

And there is no way it will work this way…

In your JS you fill your data like so:

var data = {
    'action':'send_confirmation_email',
    'email':'confirm_email',
    'key':'confirm_key',
    'name':'display_name',
    'id':'user_id',
    'is_email':'true'
};

And later, in your AJAX callback in PHP you use it as follows:

wp_mail( $_REQUEST['email'], $subject, $message, $headers );

So you’re trying to send email message using “confirm_email” as recipient address. It can’t and it won’t work 😉