这是我的自定义 ajax 请求回调。
我使用一些数据wp_remote_post
并获得关于我自己的 woocommerce 支付网关分期付款的 json 结果。
/**
* Check avaliblity for installments via WordPress Ajax
*
* @return void
*/
function check_installment() {
if ( isset($_REQUEST) ) {
$action = data_get($_REQUEST, 'action');
if($action == 'check_installment')
{
$cart_data = WC()->session->get('cart_totals');
$binNumber = data_get($_REQUEST, 'bin');
if(!$binNumber)
{
return;
}
$_initGateway = new Woo_Ipara_Gateway();
$_initGateway = $_initGateway->checkInstallment($binNumber);
$data = [
'cardFamilyName' => data_get($_initGateway, 'cardFamilyName'),
'supportedInstallments' => data_get($_initGateway, 'supportedInstallments')
];
echo json_encode(getInstallmentComissions(data_get($_initGateway, 'cardFamilyName')));
}
}
die();
}
add_action( 'wp_ajax_check_installment', 'check_installment');
add_action( 'wp_ajax_nopriv_check_installment', 'check_installment');
目前,支付提供商对特定信用卡有不同的佣金。所以这意味着,当用户选择分期付款值时,我想在此请求之后更改订单总额。
我还找到了一些过滤器,关于计算的总数woocommerce_calculated_total
,但是如何触发这个,在 ajax 请求和用户之后,选择分期付款选择?
add_filter( 'woocommerce_calculated_total', 'custom_calculated_total', 10, 2 );
function custom_calculated_total( $total, $cart ){
// some magic.
}
有什么帮助吗?谢谢。