WordPress REST API v2:使用AND运算符按多种分类标签获取帖子列表

时间:2019-01-16 15:23:07

标签: wordpress rest

我目前正在使用与Wordpress'REST api接口的Angular应用程序。该应用程序的主要组成部分是可过滤的帖子索引,用户可以在其中选择多个标签进行搜索。

我的目的是使返回的帖子包含所有选中的标签,这意味着如果选择了标签1和2,则只会返回同时具有标签1和2的帖子。

显然,这是使用过滤器查询参数的supported in prior versions,但此后一直是deprecated

我曾尝试关注文档,但尚不清楚这是否可能,而且Wordpress处理多种分类法过滤的方式非常令人困惑。这是我运行的测试:

https://<mysite>/wp-json/wp/v2/posts <-X-WP-Total标头显示359个结果。

/wp-json/wp/v2/posts?tags=52 <-253个结果,因此过滤按预期进行。

/wp-json/wp/v2/posts?tags=1 <-0个结果,符合预期,因为没有帖子被标记为ID 1。

/wp-json/wp/v2/posts?tags=1,52 <-253个结果,表示我们已切换到“ OR”条件。在这种情况下,我希望看到0个结果,因为没有帖子被ID为1标记。

/wp-json/wp/v2/posts?tags[0]=52&tags[1]=1 <-253个结果,因此仍然无法正确应用过滤

/wp-json/wp/v2/posts?tags[]=52&tags[]=1 <-253个结果,因此仍然无法正确应用过滤

/wp-json/wp/v2/posts?tags=52&tags=1 <-0结果,所以起初我以为它可以正常工作,但是在切换了标签的顺序后,例如tags=1&tags=52,我看到了253个结果,因此WP似乎只获取了最后一个“标签”值。

/wp-json/wp/v2/posts?tags=52+1 <-错误的请求

/wp-json/wp/v2/posts?tags=52%2B1 <-错误的请求

是否可以使用REST API通过多个标签过滤帖子,还是需要创建自己的端点?

此外,我搜索了类似的问题。 This Stack Exchange问题与我要寻找的问题相同,但是接受的答案不起作用,因为他们使用的“过滤器”查询参数已弃用。

0 个答案:

没有答案