通过 "woocommerce_order_get_formatted_billing_address" 过滤器挂钩获取元数据
Get meta data via "woocommerce_order_get_formatted_billing_address" filter hook
我正在尝试将自定义 post 元字段 billing_company_id
应用到 订单格式化账单地址 ,并将其放在账单公司下方。
通过以下代码我可以应用一个字符串,但是如何从订单中获取自定义 post 元数据?
add_action( 'woocommerce_order_get_formatted_billing_address', 'company_billing_id', 20, 1 );
function company_billing_id($address){
$address .= 'Custom field string';
return $address;
}
woocommerce_order_get_formatted_billing_address
过滤器挂钩包含的参数不是 1 个,而是 3 个。
通过 3rd 你可以访问 $order
对象,所以你可以使用类似的东西:
/**
* Filter orders formatterd billing address.
*
* @since 3.8.0
* @param string $address Formatted billing address string.
* @param array $raw_address Raw billing address.
* @param WC_Order $order Order data. @since 3.9.0
*/
function filter_woocommerce_order_get_formatted_billing_address( $address, $raw_address, $order ) {
// Get meta
$value = $order->get_meta( 'billing_company_id' );
// NOT empty
if ( ! empty ( $value ) ) {
// Append
$address .= $value;
}
return $address;
}
add_filter( 'woocommerce_order_get_formatted_billing_address', 'filter_woocommerce_order_get_formatted_billing_address', 10, 3 );
我正在尝试将自定义 post 元字段 billing_company_id
应用到 订单格式化账单地址 ,并将其放在账单公司下方。
通过以下代码我可以应用一个字符串,但是如何从订单中获取自定义 post 元数据?
add_action( 'woocommerce_order_get_formatted_billing_address', 'company_billing_id', 20, 1 );
function company_billing_id($address){
$address .= 'Custom field string';
return $address;
}
woocommerce_order_get_formatted_billing_address
过滤器挂钩包含的参数不是 1 个,而是 3 个。
通过 3rd 你可以访问 $order
对象,所以你可以使用类似的东西:
/**
* Filter orders formatterd billing address.
*
* @since 3.8.0
* @param string $address Formatted billing address string.
* @param array $raw_address Raw billing address.
* @param WC_Order $order Order data. @since 3.9.0
*/
function filter_woocommerce_order_get_formatted_billing_address( $address, $raw_address, $order ) {
// Get meta
$value = $order->get_meta( 'billing_company_id' );
// NOT empty
if ( ! empty ( $value ) ) {
// Append
$address .= $value;
}
return $address;
}
add_filter( 'woocommerce_order_get_formatted_billing_address', 'filter_woocommerce_order_get_formatted_billing_address', 10, 3 );