我正在尝试更新产品的库存水平,但遗憾的是没有成功。这是我的代码。 我想更新产品的“inventory_level”,但是可以这样做..
<?php
require "bigcommerce.php";
use Bigcommerce\Api\Client as Bigcommerce;
Bigcommerce::configure(array(
'store_url' => 'https://store-nos85a.mybigcommerce.com/',
'username' => 'admin',
'api_key' => '4b7c4bba19f290a728e00be6ae7133cda71f477b'
));
Bigcommerce::setCipher('RC4-SHA');
Bigcommerce::verifyPeer(false);
$product = Bigcommerce::getProduct(76);
print_r($product->skus);
foreach($product->skus as $sku)
{
if($sku->id==5)
{
$fields = array("inventory_level"=>112);
Bigcommerce::updateProduct(76,$fields);
}
echo "id : ".$sku->id;
echo " Invntory Level: ".$sku->inventory_level."<br/>";
echo " SKU : ".$sku->sku."<br/>";
}
?>
Here " Bigcommerce::updateProduct(76,$field); " is not working..
Please Help me..
Thanks..
答案 0 :(得分:8)
无需下载所有产品,为什么不检索具有您需要的sku的产品?
GET: /api/v2/products?sku=sku-that-I'm-interested-in
解析id的响应(该SKU产品的产品ID)
然后使用该产品ID进行PUT。
答案 1 :(得分:4)
我正在尝试做同样的事情(不同的编程语言)。我打电话给他们支持。看来你仍然必须引用product_id。
您无法仅通过SKU更新。您必须知道product_id。我通过请求所有产品并将响应加载到数组(product_id,sku等)来解决这个问题。然后我通过数组读取,使用SKU从我们的系统获取数量,并使用关联的product_id发布(PUT)inventory_level。
恕我直言,这对他们来说是一个巨大的疏忽。谁在乎网站上的product_id是什么?我已经要求增强功能,允许SKU更新。