nur*_*iye 3 wordpress woocommerce
我需要通过代码获取我的订单费用。有两种可能的费用:stripe 和 paypal。
Stripe 费用保存在订单元中:_stripe_fee
我需要得到那里的金额。或者:所有可能的费用(贝宝和条纹)。
虽然我只能获取元字段,但我真的不想对字段名称进行硬编码。
有没有办法获得订单的所有费用?
我试图这样得到它:
$order = wc_get_order( 8012 );
var_dump($order->get_fees());
Run Code Online (Sandbox Code Playgroud)
但是数组是空的。
但
var_dump($order)
显示有stripe fee(后端和数据库也这么说)
所以,理论上$order->fees()应该返还费用。它通过返回数组来做到这一点fee_line。不幸的是,Stripe 和 Paypal 似乎都没有写信fee_line。相反,它们写入元属性。
不过,这并不能阻止您推出自己的函数以返回 Stripe 或 Paypal 费用:
function get_order_fees(WCOrder $order) {
switch(true) {
// get fees from Stripe, if exists
case $fees = $order->get_meta("_stripe_fee");
break;
// get fees from Paypal, if exists
case $fees = $order->get_meta("_paypal_transaction_fee"):
break;
// otherwise fee is 0
default:
$fees = 0;
break;
}
return $fees;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
764 次 |
| 最近记录: |