P粉9856865572023-08-16 09:41:30
不需要使用更重的查詢來檢查客戶是否有付費訂單,因為WC_Customer
類別中已經有一個輕量級的內建功能,使用get_is_paying_customer()
方法,該方法使用自訂的用戶元數據,自WooCommerce版本5.8 起可用。
您可以使用以下方式,為新客戶停用「支票」付款:
add_filter('woocommerce_available_payment_gateways', 'cheque_payment_gateway_only_for_paying_customers'); function cheque_payment_gateway_only_for_paying_customers($gateways) { if ( ! WC()->customer->get_is_paying_customer() && isset($gateways['cheque']) ) { unset($gateways['cheque']); // 取消“支票”付款选项 } return $gateways; }
將程式碼放在您的子主題的functions.php檔案中(或外掛程式中)。已測試並可用。