2015-11-24 5 views
6

ich diese API bin mit erstellen Aufträge in WooCommerce: https://github.com/kloon/WooCommerce-REST-API-Client-LibraryWooCommerce API: Erstellen, um mit Meta-Daten auf Position

Wenn ich hinzufüge einen Auftrag:

$orderData = array(
    "order" => array(
     "line_items" => array( 
      array(
       "product_id" => 1, 
       "quantity" => 1 
      ) 
     ) 
    ) 
); 

$client->orders->create($orderData); 

alles funktioniert gut, Die Bestellung wird in WooCommerce erstellt.

Aber wenn ich eine Produktvariation mit Metadaten über die Variation hinzufügen möchte, wie soll ich das tun?

habe ich versucht, einige Dinge, einschließlich:

$orderData = array(
    "order" => array(
     "line_items" => array( 
      array(
       "product_id" => 1, 
       "quantity" => 1, 
       "variation_id" => 2, 
       "variations" => array(
        "color" => "black" 
       ) 
      ) 
     ) 
    ) 
); 

$client->orders->create($orderData); 

Was ich will, erreichen ist, wenn immer den Auftrag mit:

$client->orders->get($order_id); 

Die Farbinformationen werden bereits zu den Metadaten der addierte Werbebuchung (die Farbbeschreibung wird in den Bestelldetails beim Senden einer E-Mail angezeigt):

line_items: [ 
    { 
     id: ..., 
     subtotal: "...", 
     subtotal_tax: "...", 
     total: "...", 
     total_tax: "...", 
     price: "...", 
     quantity: 1, 
     tax_class: null, 
     name: "Product name", 
     product_id: 1, 
     sku: "", 
     meta: [ 
      { 
       key: "color", 
       label: "Color", 
       value: "black" 
      } 
     ] 
    } 
] 

Hoffe, die Frage ist klar genug und jemand kann mich auf die richtige Lösung zeigen :)

Vielen Dank für Ihre Geduld, dies zu lesen.

Antwort

0

Sie können die Produktvariationsdaten bei der Bestellung nicht angeben, die Produktvariation sollte bereits vorhanden sein und mit der Varianten-ID referenziert werden.

Zum Beispiel, wenn Sie einen Auftrag von der „schwarzen“ Variante setzen würden (sagen, es Variation ID 12 hat):

"line_items": [ 
    { 
    "product_id": 1, 
    "variation_id": 12, 
    "quantity": 1 
    } 
] 

Metadaten zu einer Produktvariation Hinzufügen kann nicht den orders Endpunkt verwendet getan werden Verwenden Sie den Endpunkt products zum Aktualisieren von Produkten.

Verwandte Themen