acf/validate_value

Last updated Feb 17, 2022

Description

Used to perform custom validation on the field’s $value before it is saved into the database.

Changelog

  • Added in version 5.0.0

Parameters

apply_filters( 'acf/validate_value', $valid, $value, $field, $input_name );
  • $valid (mixed) Whether or not the value is valid (boolean) or a custom error message (string).
  • $value (mixed) The field value.
  • $field (array) The field array containing all settings.
  • $input_name (string) The field DOM element name attribute.

Modifers

This filter provides modifiers to target specific fields. The following filter names are available:

  • acf/validate_value Applies to all fields.
  • acf/validate_value/type={$type} Applies to all fields of a specific type.
  • acf/validate_value/name={$name} Applies to all fields of a specific name.
  • acf/validate_value/key={$key} Applies to all fields of a specific key.

Example

This example demonstrates how to validate a field’s value and return a custom error message.

functions.php

<?php
function my_acf_validate_value( $valid, $value, $field, $input_name ) {

    // Bail early if value is already invalid.
    if( $valid !== true ) {
        return $valid;
    }

    // Prevent value from saving if it contains the companies old name.
    if( is_string($value) && strpos($value, 'Old Company Name') !== false ) {
        return __( 'Please remove mention of "Old Company Name".' );
    }
    return $valid;
}

// Apply to all fields.
add_filter('acf/validate_value', 'my_acf_validate_value', 10, 4);

// Apply to textarea fields.
// add_filter('acf/validate_value/type=textarea', 'my_acf_validate_value', 10, 4);

// Apply to fields named "hero_text".
// add_filter('acf/validate_value/name=hero_text', 'my_acf_validate_value', 10, 4);

// Apply to field with key "field_123abcf".
// add_filter('acf/validate_value/key=field_123abcf', 'my_acf_validate_value', 10, 4);
Supercharge Your Website With Premium Features Using ACF PRO

Speed up your workflow and unlock features to better develop websites using ACF Blocks and Options Pages, with the Flexible Content, Repeater, Clone, Gallery Fields & More.

Explore Features View Pricing

PRO Features
ACF Blocks
Options Pages
PRO Fields
Repeater
Flexible Content
Gallery
Clone

Related