也许有人知道,如何添加一个条件:如果付款金额小于3000 - 某些付款方式被隐藏?
例如有2种付款方式:
金额低于3000,“现金”方式隐藏。
据我了解,我需要获取支付网关ID,然后应用代码片段:
add_filter( 'woocommerce_available_payment_gateways', 'custom_paypal_disable_manager' );
function custom_paypal_disable_manager( $available_gateways ) {
if ( $total_amount < 3000 ) {
unset( $available_gateways['ID payment gateway'] );
return $available_gateways;
}
但是我不知道如何获取支付网关ID(支付方式有好几种,都是由不同的插件实现的)。 也许有一种方法可以获取列表中所有支付网关的ID。
如有任何信息,我将不胜感激。
获取付款方式ID
使用以下代码,将显示在前端页脚附近,付款 ID 仅对管理员和商店管理用户角色可见:
add_action( 'wp_footer', 'display_payment_method_ids_for_admins' );
function display_payment_method_ids_for_admins(){
if( current_user_can( 'administrator') || current_user_can( 'shop_manager') ) {
$available_gateways = WC()->payment_gateways->get_available_payment_gateways();
if ( ! $available_gateways ) {
return;
}
$output_html = '<table style="max-width:480px;border:solid 1px #ccc;">
<thead><tr><td>Payment Title</td><td>Payment ID</td></tr></thead>
<tbody>';
foreach( $available_gateways as $payment_id => $gateway ) {
$output_html .= '<tr><td>'.$gateway->get_title().'</td><td><code>'.$payment_id.'</code></td></tr>';
}
echo '<pre>'.$output_html.'</tbody></table></pre>';
}
}
代码位于活动子主题(或活动主题)的functions.php 文件中。
使用后,请将其取下。