WordPress 添加自定义接口

相关函数

1、rest_api_init 钩子函数,注册接口的相关信息需要挂载到此钩子上。

2、register_rest_route 接口路由函数

代码:

add_action( 'rest_api_init', 'first_route_hook' );

function first_route_hook() {
  register_rest_route( 'rangtuo/v1', 'test/(?P<id>[\d]+)', [
    'methods'  => 'GET',
    'callback' => 'first_action_callback'
  ] );
}

function first_action_callback($request) {
  $params = $request->get_params();
  $id = $params['id'];

  return $id;
}

通过 http://www.test.com/wp-json/rangtuo/v1/test/666 访问接口。

$request 参数

$request->get_url_params();
$request->get_query_params();
$request->get_body_params();
$request->get_json_params();
$request->get_default_params();
$request->get_file_params(); // 上传的文件

检查权限
在使用接口的时候,可以检查用户的权限。

register_rest_route( 'rangtuo/v1', 'test/(?P<id>[\d]+)', [
  'methods' => 'GET',
  'callback' => 'rangtuo_cb',
  'permission_callback' => 'rangtuo_permission_callback'
]);

function rangtuo_permission_callback() {
  return current_user_can( 'edit_others_posts' );
}
收藏
评论
打赏
WordPress 的用户角色和权限
上一篇
get_categories() 获取所有分类
下一篇

发表评论

像素鱼丸
52996 阅读
95 发布
3 收藏
动态
MirageV 主题 v2.19.0 发布
MarkerV 插件 v1.2.0 发布
MirageV 主题 v2.6.4 发布
LandV 企业主题 v2.6.0 发布
BotV 插件 v2.4.0 发布,开始支持 DeepSeek
FishV 主题 v1.14 发布
BotV 插件 v1.7.0 发布
MirageV 主题 v2.5 正式发布
生成中...
真诚赞赏,手留余香
登录
注册
重置密码