WooCommerce REST API 自定义字段
WooCommerce REST API Custom Fields
是否可以通过 WooCommerce REST API 访问订单、产品、客户的自定义字段?如果不是本机的,那么有哪些插件、变通方法或 hack 可以正常工作?谢谢!
如 WooCommerce 通过 API 创建订单后的评论中所述,它将触发 woocommerce_api_create_order
挂钩,您可以使用它。
将以下代码添加到您主题的 functions.php 文件
add_action( 'woocommerce_api_create_order', 'my_woocommerce_api_create_order', 10, 2);
function my_woocommerce_api_create_order( $order_id, $data ) {
// $data contains the data was posted, add code to extract the required
// fields and process it as required
}
同样查看plugins/woocommerce/includes/api/*.php
个文件中的代码,找到适合端点的action或filter hook并使用。
回答我自己的问题:
可以使用以下方法:(使用旧版 v3 API)
要将自定义字段发送回服务器:
(对于订单)
{
"order_meta": {
"key": "value"
}
}
要从服务器检索自定义字段,请将此过滤器与您的终点一起使用:
http://www.example.com/wc-api/v3/orders?filter[meta]=true
这也适用于产品。
对我有用的简单解决方案(使用 REST API REQUEST):
URL: https:///wp-json/wc/v3/orders/1234
方法: PUT
BODY:
{
"status": "completed",
"meta_data": [{
"key": "is_web_server_handled",
"value": "1"
}]
}
是否可以通过 WooCommerce REST API 访问订单、产品、客户的自定义字段?如果不是本机的,那么有哪些插件、变通方法或 hack 可以正常工作?谢谢!
如 WooCommerce 通过 API 创建订单后的评论中所述,它将触发 woocommerce_api_create_order
挂钩,您可以使用它。
将以下代码添加到您主题的 functions.php 文件
add_action( 'woocommerce_api_create_order', 'my_woocommerce_api_create_order', 10, 2);
function my_woocommerce_api_create_order( $order_id, $data ) {
// $data contains the data was posted, add code to extract the required
// fields and process it as required
}
同样查看plugins/woocommerce/includes/api/*.php
个文件中的代码,找到适合端点的action或filter hook并使用。
回答我自己的问题:
可以使用以下方法:(使用旧版 v3 API)
要将自定义字段发送回服务器: (对于订单)
{
"order_meta": {
"key": "value"
}
}
要从服务器检索自定义字段,请将此过滤器与您的终点一起使用:
http://www.example.com/wc-api/v3/orders?filter[meta]=true
这也适用于产品。
对我有用的简单解决方案(使用 REST API REQUEST):
URL: https:///wp-json/wc/v3/orders/1234
方法: PUT
BODY:
{ "status": "completed", "meta_data": [{ "key": "is_web_server_handled", "value": "1" }] }