woocommerce_checkout_fields
Met dit filter kunnen ontwikkelaars de velddefinities van het klassieke WooCommerce-afrekenproces met een shortcode aanpassen, waaronder velden voor facturering, verzending en bestelnotities.
Kort overzicht
| Type | Filterhook |
|---|---|
| Onderdeel | Klassiek afrekenen |
| Argumenten | $fields (array) |
| Bron | WooCommerce-codereferentie |
Hoe het werkt
WooCommerce geeft een geneste array met afrekenvelden door via apply_filters(). Veelvoorkomende onderdelen zijn billing, shipping en order. De sleutel order_comments verwijst naar het veld voor bestelnotities. placeholder is een van de instellingen van dat veld.
PHP-voorbeeld
add_filter( 'woocommerce_checkout_fields', function ( $fields ) {
if ( isset( $fields['order']['order_comments'] ) ) {
$fields['order']['order_comments']['placeholder'] = 'Delivery notes (optional)';
}
return $fields;
} );
Dit verandert de placeholder van het veld voor bestelnotities zonder aan te nemen dat het veld altijd bestaat. De sleutels zijn PHP-array-identificaties, geen labels die klanten zien.
Plaats de code in een sitespecifieke plug-in of in het bestand functions.php van een child-thema en test deze vervolgens op een testsite.
Veelvoorkomende valkuilen
Afrekenvelden gebruiken geneste PHP-arraysleutels. In $fields['order']['order_comments'] selecteert order de veldgroep en verwijst order_comments naar het veld voor bestelnotities. De instelling placeholder verandert de voorbeeldtekst in het veld, terwijl label het zichtbare veldlabel bepaalt. Laat de interne veldsleutel ongewijzigd wanneer je alleen de tekst wilt aanpassen.
Het verwijderen van factuur- of verzendvelden kan invloed hebben op adresvalidatie, belastingberekeningen, verzendmethoden en betaalintegraties. Wijzig voor een tekstaanpassing zoals in dit voorbeeld alleen de specifieke instelling en geef de rest van de veldarray ongewijzigd terug.
Compatibiliteit
Dit voorbeeld is bedoeld voor het klassieke afrekenproces met een shortcode. Het Checkout-blok ondersteunt niet alle aanpassingen aan klassieke velden. Bekijk voor het registreren van nieuwe velden in het Checkout-blok de Additional Checkout Fields API van WooCommerce.