WooCommerce PayPal Pro jquery.payment checkout表单改进

WooCommerce PayPal Pro jquery.payment checkout表单改进,paypal,woocommerce,hook-woocommerce,Paypal,Woocommerce,Hook Woocommerce,什么是正确的方法来连接到WC\u Gateway\u PayPal\u Pro签出信用卡表单,以在自定义主题上实现jquery.payment功能 env是最新的,使用: WooCommerce v3.0.7 WooCommerce PayPal Pro(经典版和PayFlow版)网关v4.4.6 随附并根据(…可能已过期)启用它是一个恢复到默认WC信用卡形式的问题 现在,我在“functions.php”中使用以下命令显示具有工作jquery.payment输入的表单: function

什么是正确的方法来连接到
WC\u Gateway\u PayPal\u Pro
签出信用卡表单,以在自定义主题上实现jquery.payment功能

env是最新的,使用:

  • WooCommerce v3.0.7
  • WooCommerce PayPal Pro(经典版和PayFlow版)网关v4.4.6
随附并根据(…可能已过期)启用它是一个恢复到默认WC
信用卡形式的问题

现在,我在“functions.php”中使用以下命令显示具有工作jquery.payment输入的表单:

function filter_woocommerce_payment_gateway_supports( $var, $feature, $instance ) {

    $feature = 'default_credit_card_form';

    return $feature; 
}
add_filter( 'woocommerce_payment_gateway_supports', 'filter_woocommerce_payment_gateway_supports', 10, 3 )
但这远没有起作用(从来没想到会那么容易),只是无法验证。错误范围为:

Payment error: There was a problem connecting to the payment gateway.
Payment error: Security header is not valid
Card expiration date is invalid
根据这篇文章,我认为我缺少的是“修改表单处理程序…以确保网关正在查找正确的post数据”,但是如何?找不到关于以下操作的任何相关文档,因此请寻找非常受欢迎的指针:

woocommerce_credit_card_form_args
woocommerce_credit_card_form_fields
woocommerce_credit_card_form_start
woocommerce_credit_card_form_end

最简单的方法是enque WC的
信用卡表单.js
脚本:

/*
 * Enques credit-card-form.min.js to provide
 * better Credit Card form validation
 */
function filter_woocommerce_enqueue_styles( $return_false ) {
    if ( function_exists('is_checkout') ) {
        if ( is_checkout() ) {
            $WC_credit_card_form = plugins_url( 'woocommerce/assets/js/frontend/credit-card-form.min.js');
            wp_enqueue_script('wc-credit-card-form', $WC_credit_card_form, ['jquery', 'jquery-payment'], null, true);
        }
    }
}
add_filter( 'woocommerce_enqueue_styles', 'filter_woocommerce_enqueue_styles', 10, 1 );