我有一个使用 WordPress REST API 和高级自定义字段ACF的站点。我使用插件ACF TO REST API将 AC 字段公开给 REST API。到目前为止,一切都很好。
但现在我想在 wordpress 后端的 «Preview Changes» 按钮中添加正常功能。我设法更改了按钮的功能,并且我还了解到,推送它确实会将帖子自动保存到新的修订版中。要访问和显示预览,我必须获取帖子最新版本的数据。我可以这样做,但 REST API 只公开核心的 wordpress 内容(如标题、内容、摘录等),而不是属于该帖子的 ACF。
我想访问 wordpress REST API 路由以获取帖子的最新版本,包括(更改的)ACF 字段的内容。
有人可以帮助我如何编写一个完全可以做到这一点的自定义路线吗?我尝试将此功能添加到 ACF TO REST API 插件,但到目前为止我没有成功。
我想我已经调用了一个 REST API 路由,其中包含了帖子(或页面)ID,然后它会调用返回该页面的修订版(我已经在这里> wp/v2/pages/51/revisions/
,
这向我展示了一系列修订条目,如下所示:
{
"author": 1,
"date": "2017-11-17T18:19:51",
"date_gmt": "2017-11-17T17:19:51",
"id": 461,
"modified": "2017-11-17T18:19:51",
"modified_gmt": "2017-11-17T17:19:51",
"parent": 51,
"slug": "51-autosave-v1",
"guid":
{
"rendered": "http://[DOMAIN]/51-autosave-v1/"
},
"title":
{
"rendered": "post title"
},
"content":
{
"rendered": "post content"
},
"excerpt":
{
"rendered": ""
},
"_links":
{
"parent": [
{
"href": "http://[DOMAIN]/api/wp/v2/pages/51"
}]
}
},
但现在我只想要最新的版本。最新的修订似乎就像一个普通的帖子,并且有一个普通的帖子 ID(我称之为RevisionID,这将461
在上面的示例中)。
然后我需要查询所有 post_meta 条目,'post_id' = RevisionID
并将结果与最新版本的结果合并。
有人可以确认吗?
我也会很高兴得到一些帮助,我可以为 Wordpress REST API 设置查询以过滤我想要的结果。
感谢您的帮助。
干杯