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() 获取所有分类
下一篇
像素鱼丸
50146 阅读
91 发布
3 收藏
动态
MirageV 主题 2.16.2 发布
MirageV 主题 v2.6.4 发布
LandV 企业主题 v2.6.0 发布
FishV 主题 v1.14 发布
BotV 插件 v1.7.0 发布
FishV 主题 v1.21.0 发布
MirageV 主题 v2.5 正式发布
MirageV 主题 v2.6.0 发布
生成中...
真诚赞赏,手留余香
登录
注册
重置密码