当我尝试更新通过 REST V1 API 创建的产品时,只有默认网站的值会更新。不幸的是,我找不到在 json 中发送网站 ID 的任何可能性。有没有人以前经历过这种情况?
我发送给/V1/products/123456 更新的数据:
{"product":{"sku":"123456","name":"D4D0123299","price":21,"type_id":"simple","custom_attributes":[],"extension_attributes":{"stock_item":{"use_config_manage_stock":1}}}}"
将产品链接到特定网站是通过第二个请求完成的,在通过/V1/products 创建它之后,将每个网站的此数据发送到/V1/products/123456/websites (POST):
"{"productWebsiteLink":{"sku":"D4D01232","websiteId":1}}"
"{"productWebsiteLink":{"sku":"D4D01232","websiteId":2}}"
Magento 2 版本为 2.1.0
最佳答案
Magento2 在 PUT 或 POST API 调用时总是设置默认存储
要使用 ref 将值保存到 Store 你可以像下面这样使用
API 网址
http://yourmagento2store.com/rest/default/V1/products/123456
其中 default 是商店代码
如果您想更新@Admin 级别而不是商店级别,您也可以使用admin。
http://yourmagento2store.com/rest/admin/V1/products/123456
如果你需要自定义也可以引用Magento2: REST API : Save Product Detail per store view not working
关于php - Magento 2 - REST API PUT 产品,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41140175/