Aanvulling op mijn vorige reactie: ik wil ook dat klanten verplicht zijn om een nummer bij het veld ‘huisnummer’ in te vullen. Nu heeft iemand ‘Y’ ingevuld en de bestelling kunnen afronden. 🙁
Bedankt!
Hallo Edwin,
Dat is inderdaad een goede suggestie – ik neem dit mee in de volgende update!
Fijne feestdagen!
Ewout
Hi Ewout!
Sorry voor mijn ongeduldigheid; het probleem heeft zich inmiddels alweer een paar keer voorgedaan. Zou je er ajb. de komende weken naar willen kijken?
Dank!
– Edwin
Hallo Edwin,
Je kunt dit voor nu ook oplossen met een filter. Het onderstaande filter vereist het volgende:
- 4 nummers, waarvan de eerste geen 0 mag zijn
- wel of geen spatie
- geen SA, SS of SD (bestaan niet)
- 2 letters (hoofd- of kleine letters)
add_filter( 'woocommerce_validate_postcode', 'woocommerce_validate_postcode_nl', 10, 3 );
function woocommerce_validate_postcode_nl( $valid, $postcode, $country ) {
if ($country == 'NL') {
$valid = (bool) preg_match( '/^[1-9][0-9]{3} ?(?!sa|sd|ss)[a-z]{2}$/i', trim($postcode) );
}
return $valid;
}
Als je nog niet eerder met filters hebt gewerkt, lees dan eerst dit: How to use filters
Succes!
Ewout
-
This reply was modified 7 years, 6 months ago by
Ewout. Reason: foutje in de code
Bedankt, Ewout! Heb je ook een dergelijke code voor het verplichten van huisnummers? Dit kan gewoon een simpele ‘contains 0 – 9’ validatie zijn.
Op de huisnummers wordt op dit moment helemaal geen validatie uitgevoerd, dus dat zou los ingebouwd moeten worden.
Ik heb even gekeken, maar er zit wel ‘enige’ vorm van validatie op, namelijk als er niets is ingevuld. (Melding: Factuur Nr. is een verplicht veld.)
In hoeverre is het voor jou mogelijk om in een kwartiertje zo’n code als hierboven te schrijven?
? 🙂
Je zal mij, maar ook mede-gebruikers er enorm mee helpen. De hook hierboven zou je eventueel nog onder de FAQ kunnen zetten, ervan uitgaande dat niet iedereen over de kennis beschikt om het zelf te schrijven.
het filter wat ik hierboven heb gegeven gaat mee in de volgende update, dus dan hoeft hij ook niet in de FAQ 🙂
WooCommerce kijkt inderdaad of de vereiste velden zijn ingevuld, maar daar houdt het op. Als je dus wilt kijken of er ook daadwerkelijk een nummer is ingevuld, moet er een losse validatie worden ingebouwd.
In de laatste versie licht het veld rood op wanneer er geen nummer wordt ingevuld, doordat het veld als ‘nummer’ input is gemarkeerd. Daarmee zou het al grotendeels afgevangen moeten zijn.