# Validate Phone Numbers in an ACF Field

> Checks a phone number field when a post is saved and shows an error unless it has 7 to 15 digits, optionally with +, spaces, dashes and brackets.

- Type: PHP
- Runs: Run everywhere
- Category: [Custom Post Types & Fields](https://wpide.com/library/category/post-types/)
- Tags: acf, validation, phone
- Author: WPIDE Team
- Installs: 0
- Updated: 2026-10-28
- Page: https://wpide.com/library/acf-validate-phone/

## Code

```php
// Name of the phone field.
$wpide_acf_phone_field = 'phone';

add_filter( 'acf/validate_value/name=' . $wpide_acf_phone_field, function ( $valid, $value ) {
    if ( true !== $valid || '' === trim( (string) $value ) ) {
        return $valid;
    }

    $digits = preg_replace( '/\D/', '', (string) $value );

    if ( ! preg_match( '/^\+?[\d\s().-]+$/', (string) $value ) || strlen( $digits ) < 7 || strlen( $digits ) > 15 ) {
        return 'Enter a valid phone number, for example +1 555 010 0199.';
    }

    return $valid;
}, 10, 2 );
```

## Notes

Change $wpide_acf_phone_field to your field's name. Empty values pass unless the field is required.

## How to use it

Install the free WPIDE plugin (https://wordpress.org/plugins/wpide/), find "Validate Phone Numbers in an ACF Field" in its snippet library and add it in one click; or create a new PHP snippet in WPIDE (or any code snippets plugin) and paste the code above. More snippets: https://wpide.com/library/
