我正在使用WP JSON构建前端,我需要(除其他外)每个帖子的作者姓名。
在V1中,这很容易 - 这是调用http://example.com/wp-json/posts/1的典型帖子对象的片段:
{
"ID": 1,
"title": "Hello world!",
"status": "publish",
"type": "post",
"author": {
"ID": 1,
"name": "admin",
"slug": "admin",
"URL": "",
"avatar": "http:\/\/0.gravatar.com\/avatar\/c57c8945079831fa3c19caef02e44614&d=404&r=G",
"meta": {
"links": {
"self": "http:\/\/example.com\/wp-json\/users\/1",
"archives": "http:\/\/example.com\/wp-json\/users\/1\/posts"
}
}
},
但在V2中,对于作者来说,我们得到的只是ID(整数)。将其传回API,我们会得到作者撰写的每篇文章的列表 - 但我如何获得作者的信息 - 他们的名字,头像等?
PS:男孩V2文档很稀疏...... V1好多了......
答案 0 :(得分:23)
在API网址
中附加查询参数_embed通过在请求上设置_embed查询参数来触发嵌入。然后,这将包含_Embedded键下与JSON文件中_links键相邻的嵌入式资源...如http://v2.wp-api.org/reference/links.html
中所示示例:
http://demo.wp-api.org/wp-json/wp/v2/posts?_embed
http://demo.wp-api.org/wp-json/wp/v2/posts?filter%5Bposts_per_page%5D=10&page=1&_embed
从JSON获取作者姓名,并显示:
{{postItem._embedded.author[0].name}}
获取精选图片:
{{postItem._embedded['wp:featuredmedia'][0].source_url}}
分类
{{postItem._embedded['wp:term'][0][0].slug}}
{{postItem._embedded['wp:term'][0][1].slug}}
{{postItem._embedded['wp:term'][0][2].slug}}
{{postItem._embedded['wp:term'][0][3].slug}}
...
和标签:
{{postItem._embedded['wp:term'][1][1].slug}}
{{postItem._embedded['wp:term'][1][2].slug}}
...
答案 1 :(得分:5)