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

如何用Python-Django通过WooCommerce API获取非私有隐藏商品

如何通过WooCommerce API筛选出非私有隐藏商品

当然可以解决这个问题!WooCommerce API提供了专门的查询参数,帮你轻松过滤掉那些私有或隐藏的商品。

核心思路

你提到的“私有隐藏商品”通常分为两类:

  • 商品状态为private(私有):这类商品仅管理员能看到,前端完全不可见
  • 已发布但目录可见性设为hidden:这类商品虽然状态是已发布,但不会出现在商店列表或搜索结果中

我们可以通过API的查询参数同时排除这两类商品。

修改后的代码

直接在你的get请求中添加params参数,指定商品状态和可见性:

wcapi = API( 
    url=something, 
    consumer_key=something, 
    consumer_secret=something, 
    wp_api=True, 
    version="wc/v2", 
    query_string_auth=True, 
    verify_ssl=True, 
    timeout=10 
)
# 获取所有已发布且在前端可见的商品(排除私有、隐藏商品)
r = wcapi.get("products", params={
    "status": "publish",
    "visibility": "visible"
})

参数说明

  • status": "publish":仅获取已发布状态的商品,直接排除私有(private)、草稿(draft)、待审核(pending)等非公开状态的商品
  • visibility": "visible":仅获取在商店目录和搜索结果中都可见的商品,排除那些被设置为“隐藏”的已发布商品

额外提示:处理分页

WooCommerce API默认每次返回20条商品,如果你的商品数量较多,需要分页获取:

# 每页获取100条(API允许的最大单页数量),获取第1页数据
r = wcapi.get("products", params={
    "status": "publish",
    "visibility": "visible",
    "per_page": 100,
    "page": 1
})

你可以通过循环递增page参数,直到返回的结果为空,来获取所有符合条件的商品。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.12 05:22:32