在 Woocommerce REST API 中按类别获取产品
Posted
技术标签:
【中文标题】在 Woocommerce REST API 中按类别获取产品【英文标题】:Fetch products by category in Woocommerce REST API 【发布时间】:2014-11-06 07:29:18 【问题描述】:我将 Woocomerce 用于我的 wordpress 购物车。我通过 Woocommerce REST API 将我的 android 应用程序连接到我的 Wordpress 数据库。我需要在我的应用程序上按类别获取产品。 REST API 中没有按类别获取产品的规定。
我尝试使用过滤器属性:
https://example.com/wc-api/v1/products?filter[product_cat]=gedgets&consumer_key=ck_9354534x&consumer_secret=cs_dx7345345
这是退还我所有的产品。
【问题讨论】:
【参考方案1】:根据WooThemes/WooCommerce documentation,你需要使用filters
,就像你说的,只有你似乎过滤器名称错误。
试试:
https://mysite.com/wc-api/v1/products?filter[categories]=gedgets&consumer_key=ck_9354534x&consumer_secret=cs_dx7345345
categories
是 API 返回的字段的名称,因此应该是您使用的名称。
【讨论】:
感谢您的回复。不幸的是,它也会退回所有产品。【参考方案2】:这可能是您过滤中的拼写错误吗? 我注意到它说 [categories]=gedgets 但应该改为 [categories]=gadgets 吗?
我正在尝试自己找出 Woocommerce REST API,我注意到如果我在过滤器中输入错误,它会返回所有结果。
【讨论】:
不,蛞蝓是相同的'gedgets'。拼写错误。【参考方案3】:根据 Woocommerce REST API,他们没有针对此问题的解决方案(过滤器)。 woocommerce github
希望他们会在下一个版本中添加此功能。
【讨论】:
【参考方案4】:其实根据github页面,这个功能还没有。但是,如果您看这里:http://justgeeks.in/woocommerce-rest-api-fetch-products-category/,您会发现您需要按类别 slug 过滤的内容...
【讨论】:
【参考方案5】:使用过滤器[类别]插入过滤器[类别]
https://ursite.com/wc-api/v1/products?filter[category]=gedgets&consumer_key=ck_9354534x&consumer_secret=cs_dx7345345
【讨论】:
这对我也有用。使用 slug 作为类别的参数值。你也可以添加其他过滤器,我在类别之外添加了一个限制过滤器,效果很好【参考方案6】:在这种情况下,您应该使用过滤器...
但是,它对我有用:
http://www.example.com/wp-json/wc/v1/products?category=16
16 是类别 id 的样本...
【讨论】:
非常感谢,正是我想要的。【参考方案7】:以防万一有人在未来尝试使用 Woo REST API v2 实现这一目标,这就是它的完成方式:
https://$baseUrl/wp-json/wc/v2/products?category=$categoryId
如果你只有类别的 slug,而不是 id,你可以先:
https://$baseUrl/wp-json/wc/v2/products/categories?slug=$categorySlug
【讨论】:
【参考方案8】: 您需要此 API 的 WP Rest API 插件 在 woocommmerce->设置->在选项卡后提前找到 REST API 链接中创建凭据为类型 OAuth 1.0 授权标头添加密钥并使用消费者密钥和消费者秘密并使用此 API。
http://yourdomain.com/wp-json/wc/v3/products/?category=ID
我使用了这个 API,它运行良好
【讨论】:
【参考方案9】:如果您正在查找按多个类别 ID 筛选的产品,请使用 API 端点下方:
https://example.com/wp-json/wp/v2/posts?categories=20,30
【讨论】:
以上是关于在 Woocommerce REST API 中按类别获取产品的主要内容,如果未能解决你的问题,请参考以下文章
登录时 WooCommerce REST API 身份验证失败
在 WooCommerce Rest API 创建产品的那一刻修改产品