2015-03-25 2 views
1

Я пытаюсь обновить уровни запасов магазина woocommerce через интерфейс API. Я использую kloon/WooCommerce-REST-API-Client-Library, но, к сожалению, он, похоже, только читает информацию о продукте и не позволяет мне загружать информацию о товаре.Обновление запаса через API Woocommerce V2

Чтение API документы я могу видеть, я могу обновить продукт, используя следующий:

curl -X PUT https://example.com/wc-api/v2/products/546 \ 
    -u consumer_key:consumer_secret \ 
    -H "Content-Type: application/json" \ 
    -d '{ 
    "product": { 
    "regular_price": "24.54" 
    } 
}' 

но не функции при доступе к API клиентской библиотеки в особенности PUT продукта, я нашел модифицированный клиент библиотека для V2 API rodolfojnn/WooCommerce-REST-API-Client-Library который имеет обновленные функции PUT:

/** 
* Update a product by id 
* @param int $product_id 
* @param array $data 
* @param string $method 
* @return mixed|json string 
*/ 
    public function update_product($product_id, $data, $method = "PUT") { 

     return $this->_make_api_call('products/' . $product_id, ['product' => $data], $method); 
} 

Но это сейчас выдает ошибку синтаксическая: ошибка синтаксиса, неожиданный «[» ошибка из-за [ «продукт» => $ данных] бит - я попытался преобразовать его в массив, но что также ошибки, любой какие-либо идеи, почему (я бегу это в CodeIgniter BTW)

ответ

4

попробуйте изменить

public function update_product($product_id, $data, $method = "PUT") { 

    return $this->_make_api_call('products/' . $product_id, $data, $method); 
} 

Передавать только $ данные как 2-го параметра update_product

$data= json_encode(

    array('product' => 

     array( 
      'regular_price'  => "10.26", 
      'managing_stock' => true, 
      'in_stock'   => true, 
      'stock_quantity' => 45 
     ) 
    ) 
); 
+0

я пропускал manage_stock = правда после установки этого, я теперь в состоянии обновить stock_quantity спасибо. – Esen

+0

@ Есен Можете ли вы рассказать мне, как обновить цену продукта? Я могу обновить количество, но не могу обновить цену –

Смежные вопросы