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

如何通过WooCommerce API依据商品属性搜索产品?

如何通过WooCommerce API依据商品属性搜索产品?

嘿,我看了你用WooCommerce v1 API尝试按属性搜产品的代码,问题出在参数格式上——v1 API并不支持你写的那种嵌套attribute数组的写法,得用特定的筛选参数格式才行。

先给你修正后的v1 API代码:

$args = array(
    "page" => "1",
    "status" => "publish",
    // 格式是 filter[attribute_属性slug] = 属性值
    "filter[attribute_color]" => "Loft Gray"
);
$getProducts = $woocommerce->get('products', $args);

这里要注意几个关键点:

  • attribute_color里的color是你属性的slug(不是后台显示的“Color”名称),你可以在WooCommerce后台的「产品 > 属性」页面找到对应属性的slug,比如如果属性slug是product-color,那就要写成filter[attribute_product-color]
  • 如果要筛选多个属性值,直接用逗号分隔就行,比如"filter[attribute_color]" => "Loft Gray,Black"

另外,如果你能升级到WooCommerce REST API v3的话,参数逻辑会更清晰,而且v1已经被官方弃用了,推荐优先用v3:

$args = array(
    "page" => 1,
    "status" => "publish",
    "attribute" => "color", // 属性的slug
    "attribute_term" => "loft-gray" // 属性值的slug,不是显示名称!
);
$getProducts = $woocommerce->get('products', $args);

v3里需要注意,attribute_term传的是属性值的slug,不是显示的“Loft Gray”,这点很容易踩坑,你可以在属性的“术语”列表里找到对应值的slug。

最后再补两个重要提醒:

  • 只有全局属性(不是单个产品自定义的属性)才能通过API筛选,自定义属性是搜不到的
  • 一定要确认属性和属性值的slug完全正确,大小写、连字符这些都不能错,否则会返回空结果

内容的提问来源于stack exchange,提问作者Pranav Patel

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 07:17:05