在wp rest API v2中获取帖子计数并获取所有类别

时间:2016-02-12 作者:mil

我想知道我的帖子数量。我认为使用

wp json/wp/v2/类别?页码=1>>计数这是一个很好的方法。但就速度而言,使用上述解决方案并非易事,我不知道如何通过一次呼叫获得所有类别。(如果你知道的话,分享一下会很有帮助)。有没有办法/教程/。。。是否允许我在主通话中添加post计数?像这样的路由:wp-json/wp/v2/posts。。。。

4 个回复
SO网友:Tunji

WP Rest API发送总计数(found_posts) WP\\U查询中的属性。在名为X-WP-Total.

FOR POSTS: 您可以调用REST API的posts端点

http://demo.wp-api.org/wp-json/wp/v2/posts
posts count的值在标头中返回为X-WP-Total. 下面是托管演示的响应示例

Access-Control-Allow-Headers:Authorization, Content-Type
Access-Control-Expose-Headers:X-WP-Total, X-WP-TotalPages
Allow:GET
Cache-Control:max-age=300, must-revalidate
Connection:keep-alive
Content-Encoding:gzip
Content-Type:application/json; charset=UTF-8
Date:Wed, 28 Dec 2016 12:48:50 GMT
Last-Modified:Wed, 28 Dec 2016 12:48:50 GMT
Link:<https://demo.wp-api.org/wp-json/wp/v2/posts?page=2>; rel="next"
Server:nginx/1.4.6 (Ubuntu)
Transfer-Encoding:chunked
Vary:Cookie
Via:1.1 dfa2cbb51ec90b28f03125592b887c7d.cloudfront.net (CloudFront)
X-Amz-Cf-Id:ri4C3e-AdixwqGv_wYNdGRq9ChsIroy1Waxe2GqkiTqbk4CpiSIQfw==
X-Batcache:MISS
X-Cache:Miss from cloudfront
X-Content-Type-Options:nosniff
X-EC2-Instance-Id:i-198c7e94
X-Powered-By:PHP/7.0.11-1+deb.sury.org~trusty+1
X-Robots-Tag:noindex
X-WP-Total:71
X-WP-TotalPages:8

NOTE:

您还可以限制posts per page 你的帖子数达到了1,所以你并不是为了得到帖子数而获得所有的wordpress帖子

http://demo.wp-api.org/wp-json/wp/v2/posts?per_page=1
要获取所有类别,只需在以下位置向类别端点发出Get请求:

http://demo.wp-api.org/wp-json/wp/v2/categories
这将返回所有类别,并且可以在X-WP-Total 标题。

SO网友:mgtech

如果不清楚如何从Ajax请求中实际访问标头(使用post计数),下面是如何使用jQuery。收到关键是回调函数有一个包含请求的可选参数,其中包括头。

$.get( \'http://demo.wp-api.org/wp-json/wp/v2/posts\', function( data, status, request ) {
numPosts = request.getResponseHeader(\'x-wp-total\');
console.log( numPosts ); //outputs number of posts to console
});

SO网友:DARK_DIESEL

试着回答你的部分问题。标头中返回的后wp rest api v2计数。您可以获得如下价值:

headers(\'X-WP-Total\')
每页统计帖子数:

wp-json/wp/v2/categories?page=1&per_page=5

SO网友:Sdghasemi

我花了几个小时通过谷歌和WordPress或图书馆的官方文档,用WP REST API甚至v2搜索了大量帖子,但不幸的是什么都没有找到。

所以我试着用越来越多的页码获取帖子,直到JSON array length 成为0 这意味着no more page with posts 并停止增加页码。

但是如果你想得到任意数量的posts per page 通过WP REST API,您可以轻松使用filter[posts_per_page]={$numberOfPosts} 发送请求时的参数。

希望有帮助。

相关推荐

如何使用wp-api向用户添加元字段?

如何使用wp api添加、更新和检索用户元字段?我添加了一个函数来向用户添加元字段phonenumber。这样的函数是否需要向元对象添加元值?该函数不会将字段添加到API响应中的元对象,而是将其作为新字段添加。我现在拥有的功能:<?php function portal_add_user_field() { register_rest_field( \'user\', \'phonenumber\', array( \'