Avrei bisogno di escludere dai metodi di pagamento, il Contrassegno se NON sono in lingua italiano e se la spedizione è diversa dall’Italia. Ho provato a mettere questo codice, da voi suggerito qualche giorno fa, ma non funziona correttamente:
/**
* @snippet Disable Payment Gateway For Specific Shipping Method
* @how-to Get CustomizeWoo.com FREE
* @author Rodolfo Melogli
* @testedwith WooCommerce 7
* @community https://businessbloomer.com/club/
*/
add_filter( 'woocommerce_available_payment_gateways', 'bbloomer_gateway_disable_for_shipping_rate' );
function bbloomer_gateway_disable_for_shipping_rate( $available_gateways ) {
if ( ! is_admin() && WC()->session ) {
$chosen_methods = WC()->session->get( 'chosen_shipping_methods' );
$chosen_shipping = $chosen_methods[0];
if ( isset( $available_gateways['cod'] ) && 0 === strpos( $chosen_shipping, 'local_pickup' ) ) {
unset( $available_gateways['cod'] );
}
}
return $available_gateways;
}