【发布时间】:2019-05-04 19:53:31
【问题描述】:
我知道在 Shopify 中,您可以使用以下变体 ID 将产品添加到购物车:
/cart/add?id=VARIANT_ID
我正在尝试找到一种通过 SKU 添加它的方法,如下所示:
/cart/add?sku=SKU
这样会容易得多,我们的 SKU 永远不会改变。
如果这不可能,有没有办法根据 SKU 发现变体 ID?
【问题讨论】:
我知道在 Shopify 中,您可以使用以下变体 ID 将产品添加到购物车:
/cart/add?id=VARIANT_ID
我正在尝试找到一种通过 SKU 添加它的方法,如下所示:
/cart/add?sku=SKU
这样会容易得多,我们的 SKU 永远不会改变。
如果这不可能,有没有办法根据 SKU 发现变体 ID?
【问题讨论】:
您总是在 Shopify 中购买变体。
订单本身会保留一个变量 ID 的记录作为参考点。
所以简短的回答是 NO - 您不能通过 SKU 添加产品。
第二个问题:
有没有办法根据 SKU 发现变体 id?
是的,但这真的取决于您如何实施 SKU 部分。
如果您在产品页面上并且有 SKU,那么如果您过滤掉变体,则可以获得 variant_id。
但是,如果您不在产品页面上并且您拥有例如 500 多种产品,那么最快的方法是像这样使用 GraphQL:
{
productVariants(first: 1, query: "sku:SOMESKU"){
edges {
node {
id
}
}
}
}
它将在哪里返回结果,例如:
{
"data": {
"productVariants": {
"edges": [
{
"node": {
"id": "gid://shopify/ProductVariant/14726421905460"
}
}
]
}
},
"extensions": {
"cost": {
"requestedQueryCost": 3,
"actualQueryCost": 3,
"throttleStatus": {
"maximumAvailable": 1000,
"currentlyAvailable": 997,
"restoreRate": 50
}
}
}
}
您会将返回的变体 ID 传递给购物车。
【讨论】: