Description
This filter is executed when a form fails validation, before the validation message is displayed. Use this filter to change the default validation message.
Usage
Applies to all forms.
add_filter( 'gform_validation_message', 'your_function_name', 10, 2 );
To limit the scope of your function to a specific form, append the form id to the end of the hook name. (format: gform_validation_message_FORMID)
add_filter( 'gform_validation_message_5', 'your_function_name', 10, 2 );
Parameters
- $message string
The validation message to be filtered.
"<div class='validation_error'>" . esc_html__( 'There was a problem with your submission.', 'gravityforms' ) . ' ' . esc_html__( 'Errors have been highlighted below.', 'gravityforms' ) . '</div>'
-
$form Form Object
The current form.
Examples
1. Include form title in message
This example uses the gform_validation_message filter to change the default validation message.
add_filter( 'gform_validation_message', 'change_message', 10, 2 ); function change_message( $message, $form ) { return "<div class='validation_error'>Failed Validation - " . $form['title'] . '</div>'; }
2. Include field validation errors
add_filter( 'gform_validation_message', function ( $message, $form ) { if ( gf_upgrade()->get_submissions_block() ) { return $message; } $message = "<div class='validation_error'><p>There was a problem with your submission. Errors have been highlighted below.</p>"; $message .= '<ul>'; foreach ( $form['fields'] as $field ) { if ( $field->failed_validation ) { $message .= sprintf( '<li>%s - %s</li>', GFCommon::get_label( $field ), $field->validation_message ); } } $message .= '</ul></div>'; return $message; }, 10, 2 );
Placement
This code should be placed in the functions.php file of your active theme.
Source Code
This filter is located in GFFormDisplay::get_form() in form_display.php.