Rimuovere alcuni campi di fatturazione per ordini virtuali gratuiti con WooCommerce

Vogliamo rimuovere alcuni campi dell’indirizzo di fatturazione del cliente, qualora il costo totale del suo acquisto sia uguale a zero e non sia richiesta la spedizione (ordini virtuali), ad esempio nel caso di acquisto di iscrizione a corsi gratuiti o risorse gratutite come video, ebook etc.

Nel file functions.php del nostro tema attivo andremo ad aggiungere la seguente funzione:

function intergraf_billing_fields( $fields ) {
global $woocommerce;
if ( 0 != $woocommerce->cart->total ) {
return $fields;
}
if ( $woocommerce->cart->needs_shipping() ) {
return $fields;
}
unset( $fields['billing_country'] );
unset( $fields['billing_company'] );
unset( $fields['billing_address_1'] );
unset( $fields['billing_address_2'] );
unset( $fields['billing_city'] );
unset( $fields['billing_state'] );
unset( $fields['billing_postcode'] );
unset( $fields['billing_myfield12'] );
unset( $fields['billing_myfield13'] );
return $fields;
}
add_filter( 'woocommerce_billing_fields', 'intergraf_billing_fields', 11 );

Commenta

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.

Benvenuto su Intergraf! Questo sito usa i cookie per migliorare la tua esperienza.

Cookie policy