I'm using Gravity Forms on my wordpress website. I wanted to use dynamically populated fields and also need to auto selected with parameter.
My problem is I need to pass the post id from url. but when user submit the form , need to send the post title as the value.
Eg : myurl/?staff_member=14
add_filter( 'gform_pre_render_2', 'populate_posts' );
add_filter( 'gform_pre_validation_2', 'populate_posts' );
add_filter( 'gform_pre_submission_filter_2', 'populate_posts' );
add_filter( 'gform_admin_pre_render_2', 'populate_posts' );
function populate_posts( $form ){
foreach ( $form['fields'] as &$field ) {
if ( $field->type != 'select' || strpos( $field->cssClass, 'populate-posts' ) === false ) {
continue;
}
$posts = get_posts(array(
'numberposts' => -1,
'post_type' => 'staff',
));
$choices = array();
foreach ( $posts as $post ) {
$choices[] = array(
'text' => $post->post_title,
'value' => $post->ID, //** <- I am using post ID , because url parameter need to be the post id. also i need to send post title when submit the form
);
}
$field->placeholder = 'Select Staff Member';
$field->choices = $choices;
}
return $form;
}