You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在WooCommerce订单编辑页面显示订单总金额及拆分金额

WooCommerce订单编辑页整合支票到期日与金额拆分显示功能

以下是整合后的完整代码,既保留原有的支票到期日显示逻辑,又新增了订单金额拆分展示功能,同时修复了原代码中不适合订单编辑页的逻辑问题:

add_action( 'woocommerce_admin_order_data_after_billing_address', 'custom_checkout_field_display_admin_order_meta', 10, 1 );
function custom_checkout_field_display_admin_order_meta($order){
    // 仅当支付方式为pec_gateway_check时执行后续逻辑
    $payment_method = $order->get_payment_method();
    if($payment_method != 'pec_gateway_check')
        return;

    // 显示支票到期日期
    $check_due_date = date('Y/m/d', strtotime("+40 days"));
    echo '<p>' . $check_due_date . ' تاریخ چک صیادی</p>';

    // 计算并显示35%已支付金额与65%支票支付金额
    $order_total = $order->get_total();
    $paid_amount = $order_total * 0.35;
    $check_amount = $order_total * 0.65;
    
    echo '<p>' . number_format($paid_amount) . ' ریال پرداخت شده</p>';
    echo '<p>' . number_format($check_amount) . ' ریال مبلغ چک پرداختی</p>';
}

关键修改说明

  • 支付方式获取优化:用WooCommerce官方推荐的$order->get_payment_method()替代get_post_meta,兼容更高版本的WooCommerce,代码更规范。
  • 订单金额获取修正:移除了原代码中针对购物车的全局变量调用,订单编辑页应使用$order->get_total()获取已生成订单的总金额,而非购物车金额(购物车仅适用于未提交订单的前端场景)。
  • 排版优化:给每个输出内容包裹<p>标签,让后台页面的显示更整洁,避免内容拥挤。
  • 逻辑合并:将两个功能整合到同一个钩子函数中,减少冗余代码,保持逻辑统一。

内容的提问来源于stack exchange,提问作者och

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 13:55:16