You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Magento API获取标签列表遇错误,求正确实现方案

解决Magento API标签查询的错误与正确实现

错误原因

你之前调用产品列表接口时用tags作为过滤字段报错,是因为**tags不是Magento产品实体的直接属性**。产品标签存储在独立的catalog_product_tag关联表中,无法直接通过产品接口的tags字段过滤。

1. 获取系统所有可用标签

要获取系统中所有标签,直接调用标签列表API即可:

  • 请求方式:GET
  • 请求URL:/rest/V1/products/tags/list
  • 无需额外参数

返回示例(简化版):

[
  {
    "tag_id": 1,
    "name": "my tag",
    "products_count": 5,
    "customers_count": 2
  },
  {
    "tag_id": 2,
    "name": "my tag2",
    "products_count": 3,
    "customers_count": 1
  }
]

2. 按标签名称查询对应产品

要按标签名称筛选产品,需使用tag作为过滤字段(而非tags),正确的请求URL示例:

精确匹配标签名称

/rest/V1/products?searchCriteria[filter_groups][0][filters][0][field]=tag&searchCriteria[filter_groups][0][filters][0][value]=my tag&searchCriteria[filter_groups][0][filters][0][condition_type]=eq

模糊匹配标签名称(如包含"my"的标签)

/rest/V1/products?searchCriteria[filter_groups][0][filters][0][field]=tag&searchCriteria[filter_groups][0][filters][0][value]=%my%&searchCriteria[filter_groups][0][filters][0][condition_type]=like

补充说明

如果需要先通过标签名称获取tag_id,再查询产品,也可以调用/rest/V1/products/tags/search?searchCriteria[filter_groups][0][filters][0][field]=name&searchCriteria[filter_groups][0][filters][0][value]=my tag得到标签ID,再用/rest/V1/products/tags/{tagId}/products获取对应产品列表,这种方式适合需要多次复用标签ID的场景。

内容的提问来源于stack exchange,提问作者Lydia Kirubai S

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 04:34:56