6

この API を使用して WooCommerce で注文を作成しています: https://github.com/kloon/WooCommerce-REST-API-Client-Library

注文を追加する場合:

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

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

すべて正常に動作し、注文は WooCommerce で作成されます。

しかし、バリエーションに関するメタデータを含む製品バリエーションを追加したい場合、どのようにすればよいですか?

次のようないくつかのことを試しました。

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

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

私が達成したいのは、注文を取得するときです:

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

色情報は、品目のメタデータに既に追加されています (したがって、色の説明は、電子メールを送信するときに注文の詳細に表示されます)。

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"
            }
        ]
    }
]

質問が十分に明確であり、誰かが私に正しい解決策を教えてくれることを願っています:)

これをお読みいただきありがとうございます。

4

1 に答える 1