【问题标题】:Add pre-payment option to woocommerce checkout将预付款选项添加到 woocommerce 结帐
【发布时间】:2018-02-03 01:59:55
【问题描述】:

在使用此钩子进入支付网关之前,我添加了一个复选框输入:woocommerce_review_order_before_submit

add_action( 'woocommerce_review_order_before_submit', 'add_prepayment' )
function add_prepayment() {
  echo '<p><label><input type="checkbox" name="pre_payment">Pay partially</label></p>';
}

计划是当用户选中“部分付款”选项时,将订单总价减半。

是否有 wc 过滤器或操作挂钩,以便我可以在将其发送到支付网关之前修改要收费的金额?

【问题讨论】:

标签: php wordpress paypal woocommerce


【解决方案1】:

运气不错。经过数小时搜索 woocommerce 插件代码后,我找到了这个过滤器挂钩:woocommerce_paypal_args 所以我做的是:

add_action( 'woocommerce_paypal_args', 'paypal_args' );
function paypal_args( $order ) {
        $partial_payment = isset( $_REQUEST[ 'partial_payment' ] ) ? $_REQUEST[ 'partial_payment' ] : false;

        if( $partial_payment ) {
            $current_price  = $order['amount_1'];
            // Some calculation process here..
            $order['amount_1'] = $new_price;
        }

        return $order;
  }

顺便谢谢大家。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-03-16
    • 1970-01-01
    • 1970-01-01
    • 2019-03-10
    • 2018-08-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多