Shopify Plus 与 Flow

Flow 日期条件因时区差一天怎么修

现象#

条件写订单创建日期等于今天,北京时间 0 点到 8 点下的订单在运行记录里被判成昨天,标签没有打上。

原因#

  • 订单时间戳以 UTC 存储,后台展示时区与条件求值时区可能不一致。
  • 计划时间触发器按店铺时区运行,但被比较的字段仍然是 UTC 时间。
  • 直接比较日期会丢掉时分,跨时区时边界整体偏移八小时。
  • Liquid 的 date 过滤器未指定时区时,输出与后台看到的日期不同。

处理步骤#

  1. 到 设置 → 商店详细信息 确认店铺时区,记下与 UTC 的偏移。
  2. 计划时间触发器设在店铺时区的业务时间点,例如 09:00。
  3. 条件不要比日期,改为比时间区间,使用 order.createdAt 的完整值。
  4. 运行代码 里用 new Date() 换算后再判断。
  5. 需要按本地日期分组时,先加 +08:00 偏移再取日期部分。

验收标准#

在 0 点到 8 点之间下一笔测试单,运行记录里条件通过并成功打上标签。

本文由 风格技术 技术团队整理,适用于 Shopify 标准版与 Plus 店铺。Shopify 平台能力迭代较快,具体操作路径与字段以官方文档和店铺后台实际版本为准。