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

如何通过WooCommerce REST API创建带过期日期的优惠券?

解决WooCommerce REST API创建优惠券时过期日期无法设置的问题

以下是关键解决要点和正确请求示例:

1. 日期格式需合规

WooCommerce REST API要求date_expires字段使用带时区信息的ISO 8601格式(如YYYY-MM-DDTHH:MM:SS±HH:MM),或仅使用纯日期格式YYYY-MM-DD(不含时间部分)。仅传递不带时区的时间字符串会导致API无法正确解析。

2. 避免同时传递date_expires和date_expires_gmt

API会根据WordPress站点的时区设置,自动将date_expires转换为对应的GMT时间。手动同时传入两个字段会引发冲突,只需单独传递date_expires即可。

3. 确保API版本与权限达标

  • 使用v3及以上版本的WooCommerce REST API,旧版本对日期字段的处理存在兼容性问题。
  • 确认API密钥拥有编辑优惠券的权限,否则无法修改日期相关字段。

正确请求示例

带时间和时区的格式:

{
  "code": "IGNME",
  "description": "IGNORE ME",
  "discount_type": "percent",
  "amount": 5,
  "date_expires": "2024-03-21T19:23:00+01:00"
}

仅日期的格式:

{
  "code": "IGNME",
  "description": "IGNORE ME",
  "discount_type": "percent",
  "amount": 5,
  "date_expires": "2024-03-21"
}

额外排查步骤

  • 检查WordPress后台设置-常规中的时区配置,确保date_expires的时区信息与站点时区匹配。
  • 验证请求的Content-Type头是否设置为application/json,避免JSON数据解析错误。
  • 用Postman等工具直接发送请求,排除代码实现层面的问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 20:55:00