WordPress-woo订单模块

获取订单所有自定义字段

$all_meta = $order->get_meta_data();
echo '<pre>';
foreach ($all_meta as $meta) {
    echo $meta->key . ' => ' . print_r($meta->value, true) . "\n";
}
echo '</pre>';

获取自定义字段

// 使用 WooCommerce 订单对象的 get_meta() 方法 ,获取自定义字段。
$paypal_fee = $order->get_meta('PayPal Transaction Fee');

if (!empty($paypal_fee)) {
    echo '-' . $currency_symbol . number_format($paypal_fee, 2);
} else {
    echo 'N/A';
} 

关于get_meta()

WooCommerce 3.0+ 中的 所有实体对象(如订单、产品、客户等)都推荐使用 get_meta() 和 set_meta() 方法 来访问和修改自定义数据。这是 WooCommerce 统一的元数据接口,替代了 WordPress 原生的 get_post_meta() 和 update_post_meta()。

对象类型获取方式示例代码
订单wc_get_order($order_id)$order->get_meta(‘custom_field’)
产品wc_get_product($product_id)$product->get_meta(‘custom_attribute’)
客户new WC_Customer($customer_id)$customer->get_meta(‘loyalty_points’)
配送地址$order->get_shipping_address()$address->get_meta(‘delivery_note’)
优惠券new WC_Coupon($coupon_code)$coupon->get_meta('minimum_quantity')