wp rest API v2에서 게시물 수 확인 및 모든 카테고리 가져 오기


10

내 게시물 수를 얻고 싶습니다. 나는 사용을 생각

wp-json / wp / v2 / categories? page = 1 >> 계산하기 좋은 방법입니다. 그러나 위의 솔루션을 사용하는 것은 속도 측면에서 차 한 잔이 아니며 한 번의 호출로 모든 범주를 얻는 방법을 모릅니다. 방법 / 자습서 / ...가 있습니까? 메인 통화에서 게시물 수를 추가 할 수 있습니까? 이 경로처럼 : wp-json / wp / v2 / posts ....

답변:


21

WP Rest API는 WP_Query에서 total count ( found_posts ) 특성을 보냅니다 . 헤더에서 호출 X-WP-Total.

POST의 경우 : REST API의 게시물 엔드 포인트를 호출 할 수 있습니다 .

http://demo.wp-api.org/wp-json/wp/v2/posts

게시물 수 값은 헤더에로 반환됩니다 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

노트:

가져 오는 페이지 당 게시물 수를 1로 제한하여 게시물 수 를 얻기 위해 모든 워드 프레스 게시물을 얻지 못하도록 할 수 있습니다

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헤더 에서 찾을 수 있습니다 .


7

Ajax 요청에서 실제로 (포스트 카운트로) 헤더에 액세스하는 방법이 확실하지 않은 경우 jQuery .get으로 헤더를 수행하는 방법은 다음과 같습니다. 핵심은 콜백 함수에 헤더를 포함하는 요청을 포함하는 선택적 매개 변수가 있다는 것입니다.

$.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
});

1

질문의 일부에 답하십시오. 헤더에 리턴 된 포스트 wp rest api v2의 수 다음과 같은 가치를 얻을 수 있습니다.

headers('X-WP-Total')

페이지 당 게시물 수 :

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

0

Google 및 WordPress 또는 라이브러리 공식 문서를 통해 v2조차도 WP REST API로 게시물 수를 검색하는 데 몇 시간을 보냈지 만 불행히도 아무것도 얻지 못했습니다.

따라서 반환 된 JSON 배열 길이0 이 될 때까지 페이지 번호가 증가하는 게시물을 가져 오려고 시도했습니다. 즉 , 카테고리에 게시물 이있는 페이지가 더 이상 없으며 페이지 번호 증가를 중단했습니다.

그러나 WP REST API로 페이지 당 임의의 수의 게시물 을 얻으려면 filter[posts_per_page]={$numberOfPosts}요청을 보내는 동안 매개 변수를 쉽게 사용할 수 있습니다 .

도움이 되길 바랍니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.