根据 WooCommerce 中的订单总额更改 PayPal 地址
Posted
技术标签:
【中文标题】根据 WooCommerce 中的订单总额更改 PayPal 地址【英文标题】:Change PayPal adress based on order total in WooCommerce 【发布时间】:2021-03-09 09:23:55 【问题描述】:我正在寻找解决问题的方法。我想根据 WooCommerce 订单总额更改 PayPal 电子邮件。
所以,如果订单总额
收件人 PayPal = paypalemail1@domain.com其他
收款人 PayPal = paypalemail2@domain.com我试图在这里搜索,我发现的唯一代码是:
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;
但这里不是基于 WooCommerce 订单总数,而是基于用户角色。有什么方法可以个性化吗?
【问题讨论】:
【参考方案1】:woocommerce_paypal_args
有两个参数,设置和$order
对象。所以根据订单,我们可以得到总数,并在此基础上更改电子邮件
function filter_woocommerce_paypal_args( $paypal_args, $order )
// Get total
$order_total = $order->get_total();
// Less then 10
if ( $order_total < 10 )
$paypal_args['business'] = 'paypalemail1@domain.com';
else
$paypal_args['business'] = 'paypalemail2@domain.com';
return $paypal_args;
add_filter( 'woocommerce_paypal_args', 'filter_woocommerce_paypal_args', 10, 2 );
【讨论】:
以上是关于根据 WooCommerce 中的订单总额更改 PayPal 地址的主要内容,如果未能解决你的问题,请参考以下文章
根据 Woocommerce 中的用户角色更改 COD 支付网关的默认订单状态