AJAX en WordPress

WordPress gestiona las llamadas AJAX a través de /wp-admin/admin-ajax.php. Requiere registrar una acción en PHP y llamarla desde JS.

// PHP
add_action( 'wp_ajax_mi_accion', 'mi_callback' );
add_action( 'wp_ajax_nopriv_mi_accion', 'mi_callback' );
function mi_callback() {
    check_ajax_referer('mi_accion');
    wp_send_json_success([ 'ok' => true ]);
}

wp_ajax_ es para usuarios logueados, wp_ajax_nopriv_ para visitantes.