Подтвердить что ты не робот

Woocommerce - настройка другого адреса электронной почты PayPal, если клиент является определенной ролью

Я пытаюсь добавить еще один адрес электронной почты PayPal в Woocommerce, если клиент находится в определенной роли, в данном случае оптового клиента. Woocommerce по умолчанию только позволяет вам настроить одну учетную запись PayPal, но я смог найти функцию woocommerce_paypal_arg для изменения аргументов, отправляемых в PayPal. Я вижу, что бизнес-поле несет ответственность за сохранение адреса электронной почты, на который отправляются платежи.

У меня есть код ниже, который должен перехватить это и изменить его, если пользователь является опционным_клиентом.

Вопрос в том, насколько это безопасно? Есть ли лучший способ делать то, что я хочу?

add_filter( 'woocommerce_paypal_args', 'woocommerce_paypal_args', 10, 2 );
function woocommerce_paypal_args( $paypal_args, $order ) {

    //Get the customer ID
    $user_id = $order->get_user_id();

    // Get the user data
    $user_data = get_userdata( $customer_id );
    // Adding an additional recipient for a custom user role

    if ( in_array( 'wholesale_customer', $user_data->roles )  )
         $paypal_args['business'] = '[email protected]';

    return $paypal_args;
}
4b9b3361