Woocommerce: come forzare un valore in un campo del checkout

Wordpress: Domini Diversi Per Diverse Pagine

Lo scopo del gioco di oggi è quello di riscrivere forzatamente il valore del campo del checkout, senza dover per forza modificare anticipatamente il modulo del checkout.
Per esempio, se volessi avere il prefisso internazionale telefonico corretto davanti al numero di telefono, cosa che non sempre l’utente inserisce correttamente a mano, lo si può fare attraverso questo script.
Lo script prima di riscrivere il campo, controlla anche che tale prefisso non sia già presente, se non c’è lo inserisce.

add_action( 'woocommerce_thankyou', 'bbloomer_alter_checkout_fields_after_order' );
 
function bbloomer_alter_checkout_fields_after_order( $order_id ) {
   $order = wc_get_order( $order_id );
   $phone = $order->get_billing_phone();
   $calling_code = WC()->countries->get_country_calling_code( $order->get_billing_country() );
   $calling_code = is_array( $calling_code ) ? $calling_code[0] : $calling_code;
   if ( $phone && $calling_code && ! str_starts_with( $phone, $calling_code ) ) {
      // str_starts_with() works on PHP 8+ only
      $phone = $calling_code . $phone;
      update_post_meta( $order_id, '_billing_phone', $phone ); 
   }  
}

Se ti servono personalizzazioni particolari nel tuo sito Woocommerce, non esitare a contattarmi attraverso questo modulo.

Hai un problema con il web?

Il tuo sito internet non vuole funzionare?

Vuoi rinnovarlo o sistemarlo?

Hai un’idea di integrazione ma non sai se è possibile realizzarla o meno?

    Accetto la Privacy Policy
    Autorizzo al trattamento dei miei dati personali, per ricevere le informazioni richieste attraverso questo modulo di contatto. I dati da te inseriti attraverso questo modulo verranno utilizzati solo per essere da me ricontattato.

    Recensioni

    Scrivimi una recensione

    Questo QR Code ti permette di lasciarmi una recensione in maniera facile e veloce.

    Altrimenti qui sotto ti lascio un bottone, con il quale puoi lasciare la recensione direttamente su Google My Business.

    Lascia una recensione su Google