我试图通过这种方法更新列表的变体.
清单/‘.$listing_id.’/库存
但是,当我尝试添加第二个SKU时,它会给我一个错误信息,即"SKU必须在链接的产品之间保持一致“。
我知道在变体中有一个包含多个SKU的列表是可能的,因为这就是我们目前的操作方式。我们只是尝试将一些功能转移到我们的管理门户(即更改列表上的变体)。
现在我们用“尺寸”和“袖子长度”作为变体。
我可以创建多个“袖子长度”,但当我试图添加多个大小与SKU,它错误。
我还在这里链接了一段视频来解释这个问题。
https://drive.google.com/file/d/1_dywrCfv0QjNzR2VyHqh5un7TXzuV5p8/view?usp=sharing
任何人能提供的任何帮助都将不胜感激。
这就是我要发送的数组。
$testarray= array(
[
'sku' => 'sku-1',
'property_values' => [
[
'property_id' => '52047899318',
'property_name' => 'Size',
'scale_id' => 30,
'scale_name' => '',
'value' => '0-3M White Onesie',
'value_id' => '117126874336'
],
[
'property_id' => '513',
'property_name' => 'Sleeve Length',
'value' => 'Short SL Onesie',
'value_id' => '774674484481'
]
],
'offerings' => [
[
'price' => 10,
'quantity' => 3
]
]
],
[
'sku' => 'sku-2',
'property_values' => [
[
'property_id' => '52047899318',
'property_name' => 'Size',
'scale_id' => 30,
'scale_name' => '',
'value' => '0-3M White Onesie',
'value_id' => '117126874336'
],
[
'property_id' => '513',
'property_name' => 'Sleeve Length',
'value' => 'Short SL Onesie',
'value_id' => '774674484481'
]
],
'offerings' => [
[
'price' => 10,
'quantity' => 3
]
]
]);发布于 2022-03-20 17:26:20
我知道这个问题已经有两年历史了,但是由于我在实现Etsy时遇到了同样的错误,所以我希望通过发布我的发现来帮助其他人。
假设您的项目有以下变体
Size:
M
L
Sleeve Length:
Long
Short首先,您必须知道,当发送属性值时,必须发送所有可能的组合。这意味着:
Size M -> Sleeve Length Long
Size M -> Sleeve Length Short
Size L -> Sleeve Length Long
Size L -> Sleeve Length Short这是您的产品数组中的样子,请注意我现在是如何省略skus的:
[
{
"property_values": [
{
"property_id": "52047899318",
"property_name": "Size",
"value": "M"
},
{
"property_id": "513",
"property_name": "Sleeve Length",
"value": "Short"
}
]
},
{
"property_values": [
{
"property_id": "52047899318",
"property_name": "Size",
"value": "M"
},
{
"property_id": "513",
"property_name": "Sleeve Length",
"value": "Long"
}
]
},
{
"property_values": [
{
"property_id": "52047899318",
"property_name": "Size",
"value": "L"
},
{
"property_id": "513",
"property_name": "Sleeve Length",
"value": "Short"
}
]
},
{
"property_values": [
{
"property_id": "52047899318",
"property_name": "Size",
"value": "L"
},
{
"property_id": "513",
"property_name": "Sleeve Length",
"value": "Long"
}
]
}
]现在,关于skus,假设我们有以下内容:
sku-1指的是Size M Sleeve Length Short
sku-2指的是Size L Sleeve Length Long
我们没有Size M Sleeve Length Long和Size L Sleeve Length Short的sku
记住这一点,我们的数组现在将如下所示:
[
{
"sku": "sku-1",
"property_values": [
{
"property_id": "52047899318",
"property_name": "Size",
"value": "M"
},
{
"property_id": "513",
"property_name": "Sleeve Length",
"value": "Short"
}
]
},
{
"sku": "",
"property_values": [
{
"property_id": "52047899318",
"property_name": "Size",
"value": "M"
},
{
"property_id": "513",
"property_name": "Sleeve Length",
"value": "Long"
}
]
},
{
"sku": "",
"property_values": [
{
"property_id": "52047899318",
"property_name": "Size",
"value": "L"
},
{
"property_id": "513",
"property_name": "Sleeve Length",
"value": "Short"
}
]
},
{
"sku": "sku-2",
"property_values": [
{
"property_id": "52047899318",
"property_name": "Size",
"value": "L"
},
{
"property_id": "513",
"property_name": "Sleeve Length",
"value": "Long"
}
]
}
]我们必须做的最后一件事,因为我们的sku正在从变到变--在我们的情况下,它是根据大小和袖子长度而变化的,在发送数据之前,我们必须告诉etsy,sku是根据属性的不同而变化的,为了做到这一点,我们必须设置sku_on_property属性。
在本例中,sku基于属性id、52047899318和513进行更改。
基本上,我们的请求主体将如下所示:
{
"products": [
{
"sku": "sku-1",
"property_values": [
{
"property_id": "52047899318",
"property_name": "Size",
"value": "M"
},
{
"property_id": "513",
"property_name": "Sleeve Length",
"value": "Short"
}
]
},
{
"sku": "",
"property_values": [
{
"property_id": "52047899318",
"property_name": "Size",
"value": "M"
},
{
"property_id": "513",
"property_name": "Sleeve Length",
"value": "Long"
}
]
},
{
"sku": "",
"property_values": [
{
"property_id": "52047899318",
"property_name": "Size",
"value": "L"
},
{
"property_id": "513",
"property_name": "Sleeve Length",
"value": "Short"
}
]
},
{
"sku": "sku-2",
"property_values": [
{
"property_id": "52047899318",
"property_name": "Size",
"value": "L"
},
{
"property_id": "513",
"property_name": "Sleeve Length",
"value": "Long"
}
]
}
],
"sku_on_property": [
52047899318,
513
]
}我希望这句话至少对每一个遇到这条线的人都有帮助。
你必须记住的小事情:
如果您使用Etsy "sku_on_property":"52047899318,513",我认为sku_on_property应该是一个逗号分隔的字符串,而不是一个整数数组,例如:
price_on_property和quantity_on_property,就像您为skus.所做的那样。
https://stackoverflow.com/questions/63062605
复制相似问题