I am a Country & Phone Field Contact Form 7 plugin developer. Recently one of the subscribers asked to validate the phone number.
Subscriber Query
Is it possible to exclude inputs like 55555555 or 9999999 ? This would help us a lot to get more valid phone numbers through our contact form.
Solutions code snippet
add_filter( 'wpcf7_validate_phonetext', 'prefix_phonetext_validation_filter', 10, 2 );
add_filter( 'wpcf7_validate_phonetext*', 'prefix_phonetext_validation_filter', 10, 2 );
function prefix_phonetext_validation_filter( $result, $tag ){
$type = $tag->type;
$name = $tag->name;
$extension = $_POST[$name.'-country-code'];
$value = isset( $_POST[$name] ) ? (string) wp_unslash($_POST[$name]) : '';
$value = str_replace($extension , '', str_replace(" ", "" , $value));
$str_array = str_split($value);
//print_r($str_array); die;
if ( '' != $value && count(array_unique($str_array)) === 1 ) {
$result->invalidate( $tag, __('Phone number must be correct. Not same number repeat', 'nb-cpf') );
}
return $result;
}
How to implement
- Copy above code snippet.
- Paste this code into your currently active theme functions.php file
- I recommend using a child theme, so this code will not remove from theme if in the future you update your third party free/paid theme
- You can update the validation message. If you want.
I hope, it will work for you.
Happy blogging 🙂



