如果客户属于特定角色,我会尝试将另一个PayPal电子邮件地址添加到Woocommerce中,在这种情况下是批发客户。默认情况下,Woocommerce只允许您设置一个PayPal帐户,但我能够找到woocommerce_paypal_arg
函数来更改发送给PayPal的参数。我可以看到业务领域负责保存付款发送到的电子邮件地址。
我已经获得了下面的代码,如果用户是wholesale_customer,则应该拦截此代码并进行更改。
问题是......这有多安全?有没有更好的方法来做我想要的?
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@email.com';
return $paypal_args;
}
答案 0 :(得分:2)
我可以通过构建和修改WooCommerce网关的经验告诉您,这是使用您当前插件实现此目的的一种非常安全且合理的方式。那说...在编写if语句时使用一些括号...这不是python。