php - WooCommerce API : Create order with meta data on line item

标签 php wordpress woocommerce orders woocommerce-rest-api

我正在使用此 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"
            }
        ]
    }
]

希望问题足够清楚,有人可以指出正确的解决方案:)

感谢您耐心阅读。

最佳答案

下单时不能指定产品变体数据,产品变体应该已经存在,并使用变体ID引用。

例如,如果您要订购“黑色”变体(假设它的变体 ID 为 12):

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

向产品变体添加元数据不能使用 orders 端点完成,使用 products 端点更新产品。

关于php - WooCommerce API : Create order with meta data on line item,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33887943/

相关文章:

php - 保护网络应用程序的基本原则?

javascript - 用 css 交替 div 线分隔符

WordPress Admin Flattr API 包含

php - 从 WordPress 获取 WooCommerce 产品类别

php - Woocommerce 百分比评论图表转换为数字

php - 如何检查 View 是否存在?

php - 如何检查时间数组的单个值是否在另一个时间的 +/- 15 分钟范围内

wordpress - 在商店存档页面上激活 Woocommerce 图片库功能

php - 检查列是否已分组(QueryBuilder)

php - script_loader_tag 函数是如何工作的?