在WordPress中创建自定义REST API端点涉及几个步骤。以下是一个基本的指南,帮助你创建一个简单的自定义端点:
1. 添加钩子
首先,你需要使用 add_action()
函数来添加一个钩子到 rest_api_init
动作。这个动作在REST API初始化时触发。
add_action( 'rest_api_init', 'register_custom_routes' );
2. 注册自定义路由
接下来,定义一个函数来注册你的自定义路由。在这个函数中,你可以使用 register_rest_route()
函数来创建一个新的路由。
function register_custom_routes() {
// 注册一个新的路由
register_rest_route( 'namespace/v1', '/route', array(
'methods' => 'GET', // 或者 'POST', 'PUT', 'DELETE', 等.
'callback' => 'custom_route_callback',
) );
}
在这里,namespace/v1
是你的命名空间和版本号,/route
是你的路由路径,methods
是HTTP方法,callback
是当路由被访问时调用的函数。
3. 创建回调函数
现在,你需要创建一个回调函数,这个函数将在路由被访问时执行。
function custom_route_callback( WP_REST_Request $request ) {
// 处理请求并返回响应
$response = new WP_REST_Response( array( 'message' => '这是自定义端点的响应' ) );
$response->set_status( 200 );
return $response;
}
在这个例子中,我们创建了一个简单的响应,返回一个包含消息的数组。
4. 完整代码示例
将上述代码片段组合起来,你将得到以下完整的代码示例:
add_action( 'rest_api_init', 'register_custom_routes' );
function register_custom_routes() {
register_rest_route( 'namespace/v1', '/route', array(
'methods' => 'GET',
'callback' => 'custom_route_callback',
) );
}
function custom_route_callback( WP_REST_Request $request ) {
$response = new WP_REST_Response( array( 'message' => '这是自定义端点的响应' ) );
$response->set_status( 200 );
return $response;
}
5. 将代码添加到WordPress
将上述代码添加到你的主题的 functions.php
文件中,或者创建一个插件来包含这段代码。
6. 测试自定义端点
一旦代码被添加到WordPress,你可以通过以下URL访问你的自定义端点:
http://yourwordpresssite.com/wp-json/namespace/v1/route
使用浏览器或者像Postman这样的工具来测试你的端点。
请记住,根据你的需求,你可能需要添加额外的参数处理、权限检查和其他逻辑到你的端点。这只是一个基础的例子来展示如何开始创建自定义REST API端点。