AJAX запрос возвращает ошибку 403
при AJAX запросе:
$('.form__blue-button').on('click', function () {
let ajaxscript = {
ajax_url: '/wp-admin/admin-ajax.php'
}
let newUserEmail = $('#user__email').val()
let newUserPassword = 'pqnc128Jdn'
$.ajax({
type: 'POST',
dataType: 'json',
url: ajaxscript.ajax_url,
data: {
action: 'ajaxlogin', //calls wp_ajax_nopriv_ajaxlogin
email: newUserEmail,
password: newUserPassword,
},
success: function(data){
$('form#login p.status').text(data.message);
if (data.loggedin == true){
document.location.href = ajax_login_object.redirecturl;
}
},
error: function(results){
console.log(results)
}
});
})
в функцию PHP:
function ajax_login_init(){
wp_register_script('ajax-login-script', get_template_directory_uri() . '/ajax-login-script.js', array('jquery') );
wp_enqueue_script('ajax-login-script');
wp_localize_script( 'ajax-login-script', 'ajax_login_object', array(
'ajaxurl' => admin_url( 'admin-ajax.php' ),
'redirecturl' => home_url(),
'loadingmessage' => __('Sending user info, please wait...')
));
add_action( 'wp_ajax_nopriv_ajaxlogin', 'ajax_login' );
}
if (!is_user_logged_in()) {
add_action('init', 'ajax_login_init');
}
function ajax_login(){
check_ajax_referer( 'ajax-login-nonce', 'security' );
$info = array();
$info['user_login'] = $_POST['username'];
$info['user_password'] = $_POST['password'];
$info['remember'] = true;
$user_signon = wp_signon( $info, false );
if ( is_wp_error($user_signon) ){
echo json_encode(array('loggedin'=>false, 'message'=>__('Wrong username or password.')));
} else {
echo json_encode(array('loggedin'=>true, 'message'=>__('Login successful, redirecting...')));
}
die();
}
Сервер возвращает ошибку 403
Уточню, код отвечает за логин юзера, плагинов кеширования нету, самого кеширования тоже