我有一个使用WordPress REST API的网站和高级自定义字段ACF . 我使用插件ACF TO REST API将AC字段公开给REST API . 到现在为止还挺好 .
但现在我想在wordpress后端的«Preview Changes»按钮中添加正常功能 . 我设法更改按钮功能,我还了解到推送它会将帖子自动保存到新版本中 . 要访问和显示预览,我必须获得帖子最新版本的数据 . 我可以这样做,但REST API只公开核心wordpress的东西(如 Headers ,内容,摘录等),但不公开属于该帖子的ACF .
我想访问wordpress REST API路由,以获取(更改的)ACF字段内容的最新修订版本 including .
有人可以帮我解决如何编写自定义路线吗?我尝试将此功能添加到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_id' = RevisionID
查询所有post_meta条目,并将结果与最新版本的结果合并 .
有人可以证实吗?
我也很高兴能帮助我设置Wordpress REST API的查询以过滤我想要的结果 .
谢谢你们的帮助 .
干杯
1 回答
此时我的插件ACF到REST API不支持修订,因此您需要使用下面的代码段 .
我打算在下个月发布这个功能 .
Endpoints:
http://localhost/wp-json/wp/v2/posts/{post_id}/revisions
http://localhost/wp-json/wp/v2/posts/{post_id}/revisions/{revision_id}
References:
https://github.com/airesvsg/acf-to-rest-api/issues/190#issuecomment-345854148
https://developer.wordpress.org/rest-api/reference/post-revisions/
谢谢