从 WP REST API 获得对单个 post 和多个 post 的不同响应

To get different response for single post and multiple posts from WP REST API

是否有任何选项可以为 WordPress 单个 Post 和 Post 列表获得不同类型的响应? 我的 post 列表响应目标为

[
{"id":1,
"date":"2017-08-20T07:26:55",
"link":"http://localhost/wordpress/2017/08/20/test-post",
"title":{"rendered":"Test post"}
},
{"id":2,
"date":"2017-08-20T07:26:55",
"link":"http://localhost/wordpress/2017/08/20/test-post",
"title":{"rendered":"Test post"}
},
{"id":3,
"date":"2017-08-20T07:26:55",
"link":"http://localhost/wordpress/2017/08/20/test-post",
"title":{"rendered":"Test post"}
},
{"id":4,
"date":"2017-08-20T07:26:55",
"link":"http://localhost/wordpress/2017/08/20/test-post",
"title":{"rendered":"Test post"}
}
]

单个 post 响应为

{
  "id": 92,
  "date": "2017-08-20T07:13:42",
  "date_gmt": "2017-08-20T07:13:42",
  "guid": {
    "rendered": "http://devel8/wp-news/?p=1"
  },
  "modified": "2017-08-20T07:13:42",
  "modified_gmt": "2017-08-20T07:13:42",
  "slug": "hello-world-2",
  "status": "publish",
  "type": "post",
  "link": "http://localhost/wordpress/2017/08/20/hello-world-2/",
  "title": {
    "rendered": "Hello world!"
  },
  "content": {
    "rendered": "<p>Welcome to WordPress. This is your first post. Edit or delete it, then start writing!</p>\n",
    "protected": false
  },
  "excerpt": {
    "rendered": "<p>Welcome to WordPress. This is your first post. Edit or delete it, then start writing!</p>\n",
    "protected": false
  },
  "author": 1,
  "featured_media": 0,
  "comment_status": "open",
  "ping_status": "open",
  "sticky": false,
  "template": "",
  "format": "standard",
  "meta": [],
  "categories": [
    1
  ],
  "tags": [],
  .....
  .....
  }
}

注意:使用register_rest_field()rest_prepare_post 过滤器我们可以修改两者的响应(单个和多个 posts)但我们需要单独响应。

get_callback 函数中有任何选项可以知道请求是针对多个 post 还是单个 post =26=]register_rest_field().

提前致谢。

因为我没有从任何人那里得到任何回应和解决方案,所以我决定开发一个 WordPress 插件,它将满足我处理单个 [=39= 的 WP REST API 请求响应的要求] 和 post 列表或多个 post 或 post 循环或 post 组不同,管理员可以从后端控制。

经过长期的努力,我开发了名为

的插件

One Call – WP REST API Extension

插件的核心功能是

  • 自定义和后端控件剩余api前缀如‘test-api’ where “wp-json”默认用于初始保护 api 调用。
  • 获取列表 post 和单个 post 响应的不同响应。
  • 对于posts list(multiple)调用,可以控制'one_call'字段 来自后端。
  • posts 列表后端的 WordPress 帖子字段过滤选项 (帖子循环)。

希望这个插件能帮助像我一样计划使用 Ionic、Phonegap、React Native、Framework& 和 NativeScript 等为 WordPress 网站开发移动应用程序的人。