Отримайте підрахунок дописів у програмі wp rest API v2 та отримайте всі категорії


10

Я хочу отримати кількість моїх постів. Я думаю використовувати

wp-json / wp / v2 / категории? page = 1 >> підрахуйте, що це хороший шлях. Але використання вищезгаданого рішення - це не чашка чаю з точки зору швидкості, і я не знаю, як отримати всі категорії за один дзвінок. (Якщо ти знаєш, це було б так корисно, якщо ти поділишся ним). чи є спосіб / підручник / ... дозволити мені додати кількість повідомлень до основного дзвінка? як цей маршрут: wp-json / wp / v2 / posts ....

Відповіді:


21

API відпочинку WP надсилає властивість загального підрахунку ( found_posts ) з WP_Query. у заголовку називається X-WP-Total.

ДЛЯ POSTS: ви можете телефонувати на кінцеву точку повідомлень API REST

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, щоб ви не отримували всіх своїх публікацій у 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заголовку.


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

Я витратив години на пошуки отримання кількості публікацій з API WP REST, навіть v2 через Google і WordPress або офіційні документи бібліотеки, але, на жаль, нічого не придумав.

Тому я намагався отримувати повідомлення зі збільшенням номера сторінки, поки повернута довжина масиву JSON не стане 0, а це означає, що більше немає сторінки з повідомленнями про категорію, і я не зупинився на збільшенні номера сторінки.

Але якщо ви хочете отримати довільну кількість публікацій на сторінці з WP REST API, ви можете легко використовувати filter[posts_per_page]={$numberOfPosts}параметр під час надсилання запиту.

Сподіваюся, це допомагає.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.