WooCommerce Paypal & RMB
如果在WooCommerce中设置主货币为RMB,且付款方式支持paypal,当用户选择使用paypal支付时,就会发生1块钱变成1刀的悲剧。还好这个问题并非无药可解。
解决方法是在系统向paypal发送参数前更改参数,WooCommerce提供的woocommerce_paypal_args filter可以完成这个任务。代码如下:
add_filter('woocommerce_paypal_args', 'convert_rmb_to_usd'); function convert_rmb_to_usd($paypal_args){ if ( $paypal_args['currency_code'] == 'RMB'){ $convert_rate = 6.2116; //Set converting rate $count = 1; while( isset($paypal_args['amount_' . $count]) ){ $paypal_args['amount_' . $count] = round( $paypal_args['amount_' . $count] / $convert_rate, 2); $count++; } } return $paypal_args; }
如果发现currency_code是RMB,就把currency_code转换成美元(USD),且按照汇率($convert_rate)把商品的价格(amount_1)和运费(amount_2)都转化成美元。
如果你想接收其它paypal支持的货币(这货为啥就不支持RMB),比如港币,只需要更改currency code($paypal_args[‘currency_code’])和汇率($convert_rate)就可以了。
货币符号对照表在此,按自己需要的选择吧。
AUD: Australian Dollar
BRL: Brazilian Real
CAD: Canadian Dollar
MXN: Mexican Nuevo Peso
NZD: New Zealand Dollar
HKD: Hong Kong Dollar
SGD: Singapore Dollar
USD: US Dollar
EUR: Euro
JPY: Japanese Yen
TRY: Turkish Lira
NOK: Norwegian Krone
CZK: Czech Koruna
DKK: Danish Krone
HUF: Hungarian Forint
ILS: Israeli New Shekel
MYR: Malaysian Ringgit
PHP: Philippine Peso
PLN: Polish Zloty
SEK: Swedish Krona
CHF: Swiss Franc
TWD: Taiwan Dollar
THB: Thai Baht
GBP: Pound Sterling