add_filter( 'gform_validation_1', 'fic_block_temp_emails' ); function fic_block_temp_emails( $validation_result ) { $form = $validation_result['form']; $blocked = array( 'mailinator.com', 'tempmail.com', 'guerrillamail.com', '10minutemail.com', 'yopmail.com', 'sharklasers.com', 'trashmail.com', 'getnada.com', 'temp-mail.org' ); foreach ( $form['fields'] as &$field ) { if ( $field->type !== 'email' ) { continue; } $value = rgpost( 'input_' . $field->id ); if ( is_array( $value ) ) { $value = reset( $value ); } $value = trim( strtolower( (string) $value ) ); if ( empty( $value ) || strpos( $value, '@' ) === false ) { continue; } $domain = substr( strrchr( $value, '@' ), 1 ); if ( in_array( $domain, $blocked, true ) ) { $validation_result['is_valid'] = false; $field->failed_validation = true; $field->validation_message = 'Please use a valid email address.'; } } $validation_result['form'] = $form; return $validation_result; }