We’re selling tickets via Gravity Forms for one of the websites I manage. Events are managed via another plugin and whenever a purchase is made, the event ID is saved in the form entry.
Of course, we can’t just display the ID in the backend. We want to see the name of the event, and we don’t want an outdated name either.
The solution: gform_get_input_value
(https://docs.gravityforms.com/gform_get_input_value/)
// Hooks
add_filter( 'gform_get_input_value', array( $this, 'replace_event_id' ), 10, 4 );
// Functions
public function replace_event_id( $value, $entry, $field, $input_id ) {
if ( $field->inputName === 'event_name' ) {
$event = get_post( $value );
if ( ! is_wp_error( $event ) && $event !== null ) {
$value = $event->post_title;
}
}
return $value;
}
Leave a Reply