Shopify 市场与本地化

改了 price list 价格前台没变是 catalog 没挂对

现象#

用 GraphQL 给德国市场建了 priceList 并写入 PriceListPrice,后台该市场的价格列仍是原价,前台切到德国也没有任何变化。

原因#

  • price list 只有通过 catalog 挂到 market 或 company location 才参与定价
  • catalog 的 publication 没包含该商品时,商品在该市场不可见,价格无从生效
  • 固定价按变体 ID 匹配,写到 Product.id 或旧变体 ID 上就永远命中不了
  • 同一变体命中多个定价目录时取最低价,测试价可能被另一个目录盖住

处理步骤#

  1. 查 catalog(id:) 的 markets 与 priceList 字段,确认两边都不为空
  2. 在 Markets > Catalogs 把该 catalog 指到目标市场,或反向把市场指向 catalog
  3. 核对写入的是 ProductVariant.id,批量脚本里不要误传商品 GID
  4. 同时设置 compareAtPrice,否则前台仍显示旧划线价,容易误判为没生效
  5. 等一两分钟 CDN 缓存过期,用 ?country=DE 强制刷新验证

验收标准#

德国前台商品单价等于 price list 里的 amount,后台商品详情的市场价列同步更新。

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