You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用axios通过WooCommerce API提交带meta_data的订单

问题解决方法

核心原因

你当前提交的请求参数中line_items仅携带了基础商品的ID,没有传递附加配菜对应的标识参数,WooCommerce API无法识别你选择了需要加价的配菜,因此只会计算基础商品的价格。

分场景解决方案

场景1:配菜为可变商品的变体(Variable Product)

如果你的配菜是在WooCommerce后台为商品设置的变体属性(比如不同规格、不同搭配),需要在对应line_items中新增variation_id字段,传入所选配菜对应变体的ID:

line_items: [
  {
    product_id: 1479,
    variation_id: 1482, // 替换为用户所选配菜对应的变体ID
    quantity: 2
  }
]

变体ID可以提前调用/wp-json/wc/v3/products/<product_id>/variations接口获取所有可选变体的ID和对应属性、价格。

场景2:配菜为商品附加选项(通过Product Add-Ons等插件实现)

如果你的配菜是通过第三方附加项插件配置的自定义可选属性,需要在对应line_items中新增meta_data字段,传递附加项的键值对:

line_items: [
  {
    product_id: 1479,
    quantity: 2,
    meta_data: [
      {
        key: "extra_food", // 替换为插件中配置的附加项字段名
        value: "fried_egg" // 替换为用户选择的配菜值
      }
    ]
  }
]

场景3:配菜为独立的商品

如果每个配菜本身就是WooCommerce中独立的商品,需要把每个选中的配菜作为单独的条目加入line_items数组:

line_items: [
  {
    product_id: 1479,
    quantity: 2
  },
  {
    product_id: 1485, // 替换为配菜对应的商品ID
    quantity: 2 // 和主商品数量保持一致或者按用户选择填写
  }
]

验证技巧

你可以直接抓包网页端提交订单时的请求参数,对比网页端line_items的字段结构,完全对齐字段即可保证价格计算正常,无需手动计算并传递商品总价,WooCommerce API会自动根据参数计算对应金额。

内容的提问来源于stack exchange,提问作者UMAIR ARSHAD

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 17:09:04