Search Knowledge Base by Keyword
WooCommerce Datepicker field on checkout page with 18 plus validation
This article belongs to our plugin : WooCommerce Easy Checkout Field Editor
Use below given php code snippet to create datepicker field with 18 plus validation.
Do not forget to replace billing_field_504 with your field key. You need to create one field with datepicker as field type.
you may use Code Snippets plugin to inject any extra php code.
add_action( 'woocommerce_after_checkout_validation', 'pcfme_validate_adult_dob', 10, 2); function pcfme_validate_adult_dob( $fields, $errors ){ $enterd_dob = $fields[ 'billing_field_504' ]; $pcfme_extra_settings = get_option('pcfme_extra_settings'); $dt_format = "Y-m-d"; $current_date = date($dt_format, time()); $enterd_dob = str_replace('/', '-', $enterd_dob); $your_date = date("Y-m-d", strtotime($enterd_dob) ); $diff = abs(strtotime($current_date) - strtotime($your_date)); $years = floor($diff / (365*60*60*24)); if (!isset($years) ) { $errors->add( 'validation', 'Please enter your date of birth' ); } if (isset($years) && (($years < 18) || ($years == 0)) ) { $errors->add( 'validation', 'You must be 18 or older to buy this product.' ); } }