Somehow I need to change the option value from <option value=””>–</option> to my id form by default but no idea how.
/**
* Form selection meta box in post types
*
* Registered via $this->add_meta_box_form_select()
*
* @global object $post
*/
function form_selection_metabox() {
global $post;
$forms = get_posts( array('post_type' => 'wpuf_forms', 'numberposts' => '-1') );
$selected = get_post_meta( $post->ID, '_wpuf_form_id', true );
?>
<input type="hidden" name="wpuf_form_select_nonce" value="<?php echo wp_create_nonce( plugin_basename( __FILE__ ) ); ?>" />
<select name="wpuf_form_select">
<option value="">--</option>
<?php foreach ($forms as $form) { ?>
<option value="<?php echo $form->ID; ?>"<?php selected($selected, $form->ID); ?>><?php echo $form->post_title; ?></option>
<?php } ?>
</select>
<?php
}
/**
* Saves the form ID from form selection meta box
*
* @param int $post_id
* @param object $post
* @return int|void
*/
function form_selection_metabox_save( $post_id, $post ) {
if ( !isset($_POST['wpuf_form_select'])) {
return $post->ID;
}
if ( !wp_verify_nonce( $_POST['wpuf_form_select_nonce'], plugin_basename( __FILE__ ) ) ) {
return $post->ID;
}
// Is the user allowed to edit the post or page?
if ( !current_user_can( 'edit_post', $post->ID ) ) {
return $post->ID;
}
update_post_meta( $post->ID, '_wpuf_form_id', $_POST['wpuf_form_select'] );
}