【发布时间】:2018-10-19 02:02:25
【问题描述】:
我在 Woocommerce 结帐页面中有两个不同的支付网关(条带和银行转帐)。但默认情况下始终自动选择“银行转账”(bac)。
这是我结帐页面上支付网关的屏幕截图:
我想更改它并自动选择条带支付网关。
我该怎么做?任何帮助表示赞赏。
【问题讨论】:
标签: php wordpress woocommerce stripe-payments payment-gateway
我在 Woocommerce 结帐页面中有两个不同的支付网关(条带和银行转帐)。但默认情况下始终自动选择“银行转账”(bac)。
这是我结帐页面上支付网关的屏幕截图:
我想更改它并自动选择条带支付网关。
我该怎么做?任何帮助表示赞赏。
【问题讨论】:
标签: php wordpress woocommerce stripe-payments payment-gateway
更新
您可以尝试添加以下代码,以更改结帐页面上的默认支付网关。您必须在此代码中定义默认的所需支付网关 ID:
add_action( 'template_redirect', 'define_default_payment_gateway' );
function define_default_payment_gateway(){
if( is_checkout() && ! is_wc_endpoint_url() ) {
// HERE define the default payment gateway ID
$default_payment_id = 'stripe';
WC()->session->set( 'chosen_payment_method', $default_payment_id );
}
}
代码进入您的活动子主题(或活动主题)的 function.php 文件中。经过测试并且可以工作。
您现在将始终默认使用 Stripe:
要获得 Stripe 所需的支付网关 ID,请进入 Woocommerce > 设置 > 结帐并在 “网关 ID”列 中找到它,如以下屏幕截图所示:
【讨论】:
您可以根据需要重新排列支付网关(在您的情况下是信用卡(条带),然后是直接银行转账),以便在每个新会话中始终选择前一个。
WooCommerce 会自动将当前选择的付款方式(例如直接银行转帐)保存到当前会话中,当您重新加载页面时,将选择该付款方式而不是默认方式。您可以在私有窗口浏览器中进行测试。
更新: 这个答案只是对 WooCommerce 如何处理默认网关的解释。如果通过任何更改它都不起作用。您的主题或插件中可能有一些代码(如 LoicTheAztec 的代码)覆盖了此功能。如果你想强制它默认到一个特定的网关,你可以按照 LoicTheAztec 的回答。
【讨论】:
是的,单选按钮将默认为最高的活动网关。
【讨论】: