如何在Woocommerce中添加多个用户元数据作为订单元数据



我已经创建了两个自定义用户配置文件字段,我也将它们用作用户元数据。当创建订单时,我需要将此信息保存为Woocommerce中的订单元数据。

我为每个实例创建了一个函数。

增值税编号:

add_action( 'woocommerce_checkout_create_order', 'wwp_customer_meta_data', 10, 2 );
function wwp_customer_meta_data( $order, $data ) {
$user_id  = $order->get_user_id(); // Get the user id
$wwp_vat = get_user_meta( $user_id, 'wwp_wholesaler_tax_id', true );
$order->update_meta_data( 'VAT Number', $wwp_vat );
}

我的会计软件中的公司编号:

add_action( 'woocommerce_checkout_create_order', 'visma_customer_meta_data', 10, 2 );
function visma_customer_meta_data( $order, $data ) {
$user_id  = $order->get_user_id(); // Get the user id
$billing_visma = get_user_meta( $user_id, 'billing_visma', true );
$order->update_meta_data( 'Billing Visma', $billing_visma );
}

如何将两个函数合并为一个函数?

我想学习如何更有效地创建代码。

你应该这样做:

add_action( 'woocommerce_checkout_create_order', 'add_customer_meta_data_to_order', 10, 2 );
function visma_customer_meta_data( $order, $data ) {
$user_id  = $order->get_user_id(); // Get the user id
$billing_visma = get_user_meta( $user_id, 'billing_visma', true );
$order->update_meta_data( 'Billing Visma', $billing_visma );
$wwp_vat = get_user_meta( $user_id, 'wwp_wholesaler_tax_id', true );
$order->update_meta_data( 'VAT Number', $wwp_vat );
}

最新更新