首页 > 解决方案 > Wordpress API 获取所有帖子

问题描述

我正在尝试使用 wp-json 获取所有帖子(只有他们的链接)。我目前有大约 40 个帖子。

这个请求部分有效……它给了我大约 8 个帖子,但不是全部。

/wp-json/wp/v2/posts?_fields=link

当我将所有类别添加到请求中时,我会收到每个帖子

/wp-json/wp/v2/posts?_fields=link&per_page=100&page=1&categories=1,2,3,6,7,8,21

这个解决方案不是最好的,因为我将来会添加类别。

我的第一个请求有什么问题?

谢谢你

标签: jsonwordpresswordpress-rest-api

解决方案


您还可以使用过滤器更改参数。

add_action( 'rest_movies_params', function( $params ){
    if ( isset( $params ) AND isset( $params[ 'per_page' ] ) ) {
        $params[ 'per_page' ][ 'maximum' ] = 200;
    }
    return $params;
});

这里我分享了官方代码参考的链接。 关联

并在 fetch url 添加?per_page=200

这里我分享了 url 的例子:

https://example.com/wp-json/wp/v2/movies?per_page=200

笔记:

  1. 目前在我的示例(代码和网址)中,我添加了电影自定义帖子类型以供参考。您可以根据您的要求进行更改。
  2. 如果帖子大于 200,那么您可以?page=2在您的网址中使用。

推荐阅读