wp_get_current_user() 返回用户对象。不能直接输出对象。
继续获取用户角色,如$roles = (array)$user->roles;. 请注意,这将返回一个数组,因此您可能希望将第一个元素用于$roles[0].
您的代码可能如下所示(未测试):
function onboarding_update_fields( $fields = array() ) {
   $user = wp_get_current_user();
   $roles = (array)$user->roles;
   $fields[\'customertype\'] = $roles[0];
   return $fields;
}
add_filter( \'woocommerce_checkout_fields\', \'onboarding_update_fields\' );
 此外,您可能需要检查用户是否已登录,否则可能没有可用的用户和角色。
WordPress代码参考文章:wp_get_current_user, User object.