【问题标题】:Add a user-role as custom meta data to WooCommerce orders将用户角色作为自定义元数据添加到 WooCommerce 订单
【发布时间】:2019-09-12 23:10:38
【问题描述】:

在 WooCommerce 中,我想知道是否可以使用 user_role 元键将用户角色作为自定义字段保存到订单(自定义元数据),如下图所示:

欢迎任何帮助。

【问题讨论】:

    标签: php woocommerce custom-fields orders user-roles


    【解决方案1】:

    以下将用户角色添加为自定义订单元数据:

    // Add the user roles as order meta data
    add_action( 'woocommerce_checkout_create_order', 'add_user_roles_to_order_meta_data', 10, 2 );
    function add_user_roles_to_order_meta_data( $order, $data ) {
        if( $order->get_user_id() > 0 ) {
            $user = $order->get_user();
            $user_role = reset($user->roles)
    
            $order->update_meta_data( 'user_role', $user_role );
        }
    }
    

    代码进入您的活动子主题(或活动主题)的 function.php 文件中。经过测试并且可以工作。

    要从WC_Order Object $order 变量中获取用户角色,您将使用:

    $user_role = $order->get_meta('user_role');
    

    或来自订单 ID $order_id 变量:

    $user_role = get_post_meta($order_id, 'user_role', true);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-06-01
      • 1970-01-01
      • 2016-10-12
      • 2021-02-22
      • 1970-01-01
      • 2021-08-27
      • 2018-07-12
      • 1970-01-01
      相关资源
      最近更新 更多