使用WordPress API从页面获取所有PDF文件

时间:2019-12-10 作者:tom84

我正在寻找一种使用WordPress API从WordPress帖子中获取所有PDF文件的方法。我获得了所有随附文件:

https://www.domain.com/wp-json/wp/v2/media?parent=1267

但当我尝试仅获取包含以下内容的PDF文件时,它不起作用:

https://www.domain.com/wp-json/wp/v2/media?parent=1267&search=.pdf

有什么想法吗?

顺致敬意,

1 个回复
最合适的回答,由SO网友:Anthony D 整理而成

您可以通过查询

mime_type=application/pdf
因此,根据您的示例,您的完整URL是:

https://www.domain.com/wp-json/wp/v2/media?parent=1267&mime_type=application/pdf
但是,使用parent=ID 参数,您将看到ALL PDF,而不仅仅是特定于该帖子的附件。当PDF上载到媒体库时会发生这种情况,但不一定要上载到特定的页面/帖子。

也许它们是在页面/帖子中手动链接的,而不是通过Add Media

当文件被特别附加到页面/帖子时,查询会按照您的要求进行。

为了更好地解释我的意思,请访问您的媒体库,点击其中一个PDF查看“附件详细信息”。如果不包括该行"Uploaded to", 然后,它将显示在对PDF文件类型的所有查询中。

然而,如果它看起来像下面这样,那么您应该通过上面提供的查询获得正确的结果,该查询只显示附加到特定页面的PDF。WP PDF Attachment Details基本上,如果文件没有特定的上传路径,查询将显示所有内容,因为它无法过滤掉散乱的附件。

相关推荐

在API请求返回一个值后更新块

我有一个块,允许用户在编辑模式下输入脚本,然后将该脚本发送到REST端点,该端点返回WP_Post 表示随后显示给用户的媒体文件。REST端点可能需要几秒钟(甚至几分钟)才能发送回复,因此我希望以异步方式进行更新,并在用户等待时显示微调器。问题是,即使在REST端点返回其值之后,微调器也会无限期显示。我不确定我做错了什么。以下是我的(缩写)块代码:( function( wp ) { var registerBlockType = wp.blocks.registerBlockType;&