Hi,
I’ve been able to create a function that passes information from ACF to a Gravity Forms drop down menu. It will successfully load up dates as “selections” in the dropdown. I am not trying to add an ACF field called “location” to the field, but it will not return the value.
Any ideas on how to get this to work?
Code is below.
add_filter('gform_pre_render_3', 'populate_dates');
function populate_dates($form){
foreach($form['fields'] as &$field){
if($field['type'] != 'select' || strpos($field['cssClass'], 'populate-dates') === false)
continue;
// you can add additional parameters here to alter the posts that are retreieved
// more info: http://codex.wordpress.org/Template_Tags/get_posts
$currentdate = date("Y-m-d",mktime(0,0,0,date("m"),date("d"),date("Y")));
$events = get_posts(array(
'post_type' => 'seminars',
'orderby' => 'date',
'order' => 'ASC',
'meta_query'=> array(
array(
'key' => 'date',
'compare' => '>=',
'value' => $currentdate,
'type' => 'DATE',
)),
'meta_key' => 'date',
));
// update 'Select a Post' to whatever you'd like the instructive option to be
$choices = array(array('text' => 'Requested Seminar Date', 'value' => ' '));
foreach($events as $post){
$location = get_field("location");
$postdate = $post->date;
// $postdate = 19881123 (23/11/1988)
// extract Y,M,D
$y = substr($postdate, 0, 4);
$m = substr($postdate, 4, 2);
$d = substr($postdate, 6, 2);
// create UNIX
$time = strtotime("{$d}-{$m}-{$y}");
// format date (November 11th 1988)
$dropdowndate = date('M d, Y', $time);
// not sure if you want to change just the displayed date, or the submitted date as well
// if you want to change both, change the second $post->date to $dropdowndate
$choices[] = array('text' => $dropdowndate . $location, 'value' => $post->$dropdowndate);
}
$field['choices'] = $choices;
}
return $form;
}