首页 视频课程 主题开发课程第17章、AJAX异步 WordPress后端处理AJAX请求

WordPress后端处理AJAX请求

2023-06-11 / 408阅

在WordPress中,要处理AJAX请求,可以使用WP REST API或者WordPress自带的AJAX API。以下是使用AJAX API的示例代码:

  1. 注册AJAX处理函数

在functions.php中注册AJAX处理函数:

add_action('wp_ajax_my_ajax_request', 'my_ajax_function');
add_action('wp_ajax_nopriv_my_ajax_request', 'my_ajax_function'); // for non-logged-in users
function my_ajax_function() {
    // AJAX处理代码
    wp_send_json_success($response_data); //返回JSON数据
    wp_die(); // 终止请求
} 
  1. 前端发送AJAX请求

在JavaScript代码中发送AJAX请求:

jQuery(document).ready(function($) {
    //发送AJAX请求
    $.ajax({
        url: ajaxurl,
        type: 'POST',
        data: {
            'action': 'my_ajax_request', 
            'param1': 'value1', 
            'param2': 'value2'
        },
        success: function(response) {
            console.log(response); // 处理响应数据
        }
    });
}); 

在数据中,action参数指定了要调用的后端函数,param1param2是传给后端的参数。

注意,ajaxurl是WordPress在后端自动注入的变量,用于指定AJAX请求的目标URL。

  1. 返回JSON数据

my_ajax_function中,使用wp_send_json_success($response_data)向前端返回JSON格式的数据。可以使用wp_send_json_error($error_message)返回错误信息。

在前端的响应中,会收到一个类似于以下的JSON数据:

{
    "success": true,
    "data": {
        "param1": "value1",
        "param2": "value2"
    }
} 

其中,success表示请求是否成功,data是返回的数据对象。

如果请求失败,JSON数据会类似于:

{
    "success": false,
    "data": {
        "message": "错误信息"
    }
} 

阅读文章或者观看视频过程中有任何问题,请下方留言或者联系我Q248758228

大家谈论
    我的见解
    目录