К своей теме пытаюсь добавить функцию через rest api, где я указываю id пользователя и сбрасываю ему пароль.
Судя по ошибке, я как то не так регистрирую
jquery.min.js:4 POST http://*****.ap-southeast-2.compute.amazonaws.com/... 404 (Not Found)
functions.php
add_action( 'rest_api_init', 'register_api_hooks' );
function register_api_hooks() {
register_rest_route('user',
'/reset_pas/(?P<id>\d+)',
array(
'method' => 'POST',
'post_callback' => 'reset_password_callback',
'schema' => null
));
}
function reset_password_callback($request ){
$id=$request['id'];
global $current_user;
get_currentuserinfo();
$user_to_reset = get_user_by( 'id', $id );
$new_pass = wp_generate_password( 20, false );
do_action( 'password_reset', $user_to_reset, $new_pass );
wp_set_password( $new_pass, $user_to_reset->ID );
update_user_option( $user_to_reset->ID, 'default_password_nag', false, true );
do_action( 'after_password_reset', $user_to_reset, $new_pass );
}
JS
resetUserPassword(id){
var that = this;
$( document ).ready(function() {
jQuery( document ).ready(function( $ ) {
$.ajax({
'url': Slug_API_Settings.root + 'wp/v2/user/reset_pas/' + id,
'method': 'POST',
'beforeSend': function (xhr) {
xhr.setRequestHeader('X-WP-Nonce', Slug_API_Settings.nonce);
}/*,
data: {
'id': that.state.id
}*/
}).done( (r)=>{
console.log(r);
//that.props.resetUsers
} );
});
});
}