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

如何为WooCommerce货到付款订单设置默认交易ID(FREESAMPLE)

解决方案:为WooCommerce货到付款0元订单设置默认交易ID

可以通过WooCommerce的动作钩子,在订单创建阶段自动为符合条件的订单设置交易ID,具体代码实现如下:

/**
 * 为0元货到付款订单设置默认交易ID
 */
function set_default_transaction_id_for_free_cod_orders( $order ) {
    // 检查支付方式是否为货到付款(COD的支付方式ID为'cod')
    if ( 'cod' === $order->get_payment_method() ) {
        // 检查订单总额是否为0
        if ( 0 === $order->get_total() ) {
            // 设置交易ID为指定值
            $order->set_transaction_id( 'FREESAMPLE' );
            // 保存订单修改
            $order->save();
        }
    }
}
// 挂钩到订单创建完成后的动作
add_action( 'woocommerce_checkout_create_order', 'set_default_transaction_id_for_free_cod_orders', 10, 1 );

说明:

  • 上述代码利用woocommerce_checkout_create_order钩子,在订单刚创建、还未保存到数据库时触发,确保交易ID在订单同步到QAD系统前就已设置。
  • 代码中同时校验了支付方式和订单总额,即使后续COD的启用条件有变动,也能保证只有0元的COD订单才会被设置默认交易ID。
  • 把这段代码添加到你的WordPress主题的functions.php文件中,或者创建一个自定义插件来存放代码(推荐后者,避免主题更新导致代码丢失)。
  • 设置完成后,新生成的符合条件的订单会自动带有FREESAMPLE交易ID,无需手动修改。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 16:11:17