WooCommerce REST API - 获取订单的自定义结帐页面字段

时间:2017-02-14 11:38:52

标签: php wordpress rest woocommerce-rest-api

我正在使用WooCommerce REST API(http://woocommerce.github.io/woocommerce-rest-api-docs/#introduction),并使用他们的示例在结帐页面添加了一个新字段(shipping_phone):

https://docs.woocommerce.com/document/tutorial-customising-checkout-fields-using-actions-and-filters/

此新字段显示在结帐页面上,我可以将其填充并保存到我的订单中 - 这是它在WordPress管理页面中显示的顺序:

enter image description here

我现在正尝试使用此GET请求下载带有shipping_phone数据的订单:

/wp-json/wc/v1/orders/3454

但shipping_phone字段未包含在下载的字段中。这是GET响应中的Shipping字段:

"shipping": {
"address_1": "45 Jones Road", 
"address_2": "", 
"city": "Bondi", 
"company": "BS Consulting Pty Ltd", 
"country": "AU", 
"first_name": "Betty", 
"last_name": "Sanders", 
"postcode": "2026", 
"state": "NSW"
}, 

它也不位于JSON数据中的任何其他位置。如何获取包含此新自定义字段的订单的GET请求?

1 个答案:

答案 0 :(得分:0)

您可以使用 WooCommerce REST API v2 或更高版本来获取包含这些自定义字段的订单元数据。如果您收到订单:

wp-json/wc/v3/orders/3454

它将包含一个带有这些自定义字段值的 meta_data 数组:

"meta_data" : 
[
    {
        "id" : 4672,
        "key" : "_shipping_method",
        "value" : [ "flat_rate:1" ]
    },
    {
        "id" : 4673,
        "key" : "_shipping_phone",
        "value" : "08 9632 7412"
    }
]