Wordpress REST API:按自定义分类过滤

时间:2017-10-10 14:24:07

标签: php angularjs wordpress rest

我有一个名为"产品"的自定义帖子类型它有一个名为"域"。

的分类

我正在使用WP Rest API和AngularJS 1.5.1。我正在使用服务获取产品帖子。这部分工作正常。

      getProducts: function () {
        return $http.get('URL/wp-json/wp/v2/products').then(function (result) {
        return result.data;
    });
  }

这将返回一组产品,每个产品都是(部分):

  {
    "id": 29,
    "date": "2017-10-09T16:21:56",
    "date_gmt": "2017-10-09T16:21:56",
    "guid": {
        "rendered": "URL/?post_type=product&p=29"
    },
    "modified": "2017-10-09T19:58:32",
    "modified_gmt": "2017-10-09T19:58:32",
    "slug": "product-name",
    "status": "publish",
    "type": "product",
    "link": "URL/product/product-name/",
    "title": {
        "rendered": "product name"
    },
    "content": {
        "rendered": "some content",
        "protected": false
    },
    "featured_media": 30,
    "template": "",
    "domain": [
        2
    ],
    ...
  }

正如您所看到的,我的分类术语"域"用数字表示," 2"在这种情况下。

但是,使用Postman,如果我按照here所述进行GET:

URL/wp-json/wp/v2/products?filter[domain]=2

我仍然可以恢复所有产品,而不仅仅是像我预期的那样拥有domain = 2的产品。

我在这里缺少什么?

1 个答案:

答案 0 :(得分:0)

似乎WP删除了v4.7中的filter参数。您可以在here中添加一个插件来添加该功能。

我刚刚将该函数合并到我的functions.php中,它的工作原理如下: /wp-json/wp/v2/products?filter[taxonomy_name]&filter[term]=taxonomy-slug