39 lines
1.1 KiB
PHP
39 lines
1.1 KiB
PHP
<?php
|
|
|
|
add_filter('gform_pre_render_18', 'populate_posts');
|
|
add_filter('gform_pre_validation_18', 'populate_posts');
|
|
add_filter('gform_pre_submission_filter_18', 'populate_posts');
|
|
add_filter('gform_admin_pre_render_18', 'populate_posts');
|
|
|
|
function populate_posts($form)
|
|
{
|
|
|
|
foreach ($form['fields'] as &$field) {
|
|
if ($field->type != 'checkbox' || strpos($field->inputName, 'publication-list') === false) {
|
|
continue;
|
|
}
|
|
|
|
// you can add additional parameters here to alter the posts that are retrieved
|
|
// more info: http://codex.wordpress.org/Template_Tags/get_posts
|
|
$brochures_query = new WP_Query(array(
|
|
'post_type' => 'brochures',
|
|
'posts_per_page' => -1,
|
|
'post_status' => 'publish',
|
|
));
|
|
|
|
// $posts = get_posts('numberposts=-1&post_status=publish&post_type=brochures');
|
|
|
|
$choices = array();
|
|
|
|
foreach ($brochures_query->posts as $post) {
|
|
$choices[] = array('text' => $post->post_title, 'value' => $post->post_title);
|
|
}
|
|
|
|
// update 'Select a Post' to whatever you'd like the instructive option to be
|
|
$field->placeholder = 'Select a Post';
|
|
$field->choices = $choices;
|
|
}
|
|
|
|
return $form;
|
|
}
|