Les champs de profils WooCommerce
Deux types de champs de profils sont présents par défaut dans WooCommerce, alloués à la facturation et à l’expédition.
Ces champs ne sont ni plus ni moins que des user_meta, c’est-à-dire associés à un utilisateur.
Les champs de facturation :
billing_first_name
: Prénombilling_last_name
: Nombilling_company
: Entreprisebilling_address_1
: Première ligne d’adressebilling_address_2
: Deuxième ligne d’adressebilling_city
: Villebilling_postcode
: Code postalbilling_country
: Paysbilling_state
: Régionbilling_phone
: Téléphonebilling_email
: Email
Les champs d’expédition :
shipping_first_name
: Prénomshipping_last_name
: Nomshipping_company
: Entrepriseshipping_address_1
: Première ligne d’adresseshipping_address_2
: Deuxième ligne d’adresseshipping_city
: Villeshipping_postcode
: Code postalshipping_country
: Paysshipping_state
: Régionshipping_phone
: Téléphone
Ces champs sont apparents à deux endroits :
- Dans le compte du membre
- Sur la page de paiement
Plusieurs hooks sont disponibles afin de les modifier :
woocommerce_default_address_fields
: ce hook permet de tous les modifier, à tous les endroits disponibleswoocommerce_shipping_fields
: idem, mais concerne uniquement les champs d’expéditionwoocommerce_billing_fields
: idem, mais concerne uniquement les champs de facturationwoocommerce_checkout_fields
: n’affecte que la page de paiement et rien d’autre
Cet article montre simplement un exemple : woocommerce_billing_fields
Le hook woocommerce_billing_fields
Le hook woocommerce_billing_fields
est de type filter et prend 1 seul paramètre :
$fields
: Les champs de profil
L’affichage du contenu de ce paramètre donne :
Je supprime quelques champs afin d’illustrer l’utilisation de ce hook. En passant je montre également qu’il est possible d’affecter le caractère obligatoire d’un champ, par exemple le téléphone :
Le résultat souhaité :
Le code intégral
Il suffit de supprimer les champs du tableau passé en paramètre grâce à la fonction unset
.
Le caractère obligatoire peut être altéré en changeant la valeur de la clef required
pour un champ dans ce même tableau.