我目前正在尝试使用 Storefront API 中的
cartMetafieldsSet
查询将用户生成的信息添加到订单中。
下面的查询似乎成功地将元字段添加到购物车对象上,但是在继续结账并付款后,订单上的元字段为空。
cartMetafieldsSet
和管理 API 上的 metafieldsSet
之间有区别吗?// GraphQL Query
mutation cartMetafieldsSet($metafields: [CartMetafieldsSetInput!]!) {
cartMetafieldsSet(metafields: $metafields) {
metafields {
# Metafield fields
createdAt
description
value
}
}
}
// Variables
{
"metafields": [
{
"key": "custom.test",
"ownerId": "CART_ID",
"type": "multi_line_text_field",
"value": "This is a test value"
}
]
}
感谢您的帮助!
你混淆了两个概念。购物车不是订单。当然可以使用 Storefront API 设置购物车元字段。您这样做会影响结账。在结帐时,您会得到一个购物车,然后查看元字段,这也许有助于结帐。
但是,一旦 Shopify 将结帐转换为订单,是什么让您认为您会在购物车上找到设置的元字段?如果您想捕获购物车中的信息,请使用购物车属性或注释。这些按顺序显示。