对于本地交付,我们已向用户添加了路线编号和位置,因此我们可以计算本地交付的最佳路线。在 Woocommerce 中,我们使用 Advanced Order Export Pro 根据运输方式创建订单导出。
默认情况下,自定义字段不会返回到订单详细信息中,因此我们正在寻找一种解决方案,根据电子邮件地址(或其他内容)将路线编号和位置添加到订单详细信息中。
应将用户级别的自定义字段添加到订单详细信息中
有人知道我们该如何解决这个问题吗?
我们在互联网上进行了搜索,认为我们可以通过像 Checkout 字段编辑器这样的插件来解决这个问题,添加这些字段并使它们在前端不可见。但我正在寻找一些代码放入functions.php中。
使用以下命令将 ACF 用户自定义数据作为自定义订单元数据添加到订单中:
// When order is placed in checkout, add ACF user fields as custom order meta data
add_action( 'woocommerce_checkout_create_order', 'add_order_total_weight_metadata' );
function add_order_total_weight_metadata( $order ) {
if ( $user_id = get_current_user_id() ) {
if( $route_number = get_field("routenumber", "user_{$user_id}" ) ) {
$order->add_meta_data('route_number', $route_number);
}
if( $route_location = get_field("routelocatie", "user_{$user_id}" ) ) {
$order->add_meta_data('route_location', $route_location);
}
}
}
代码位于子主题的functions.php 文件中(或插件中)。应该可以。