title: $_FILES consistently empty in WordPress post meta upload box
body: <p>I'm feeling silly. I'm building my first WordPress plugin. The first goal is to add a custom meta box to a post that will allows an audio upload. I have the meta box created, and when I use a text input, the code works fine. When I try to convert the input into a file upload though, I'm running into a problem.</p>
  
  <ol>
  <li>The file never uploads (I'm using <code>wp_upload_bits()</code>)</li>
  <li>$_FILES seems to always be empty. In the below example, when I call something like <code>$_FILES[ 'audio_box' ]</code>, I always get an invalid or unavailable key.</li>
  </ol>
  
  <p>Here's a simplified version of the code I'm using. I have nonces and all that setup in the real version!</p>
  
  <pre><code>&lt;?php
  
  add_action( 'load-post.php', 'file_upload_setup' );
  add_action( 'load-post-new.php', 'file_upload_setup' );
  
  function file_upload_setup() {
      add_action( 'add_meta_boxes', 'file_upload_box' );
      add_action( 'save_post', 'upload_save_post_class_meta' );
  }
  
  function file_upload_box() {
      add_meta_box(
          'audio_box',    // Unique ID
          esc_html__( 'Title' ),
          'audio_box',   // Callback function
          'post',         // Admin page (or post type)
          'side',         // Context
          'default'         // Priority
      );
  }
  
  function upload_save_post_class_meta( $post_id ) {
      if ( !empty( $_FILES[ 'audio_box' ] ) ) {
          $upload = wp_upload_bits( $_FILES[ 'audio_box' ][ 'name' ],
              null,
              file_get_contents( $_FILES[ 'audio_box' ][ 'tmp_name' ] )
          ); 
      }
  }
  
  function file_upload_box( $post ) { ?&gt;
      &lt;p&gt;
          &lt;label for="file_upload_box"&gt;&lt;?php _e( "Upload an audio file to accompany your post." ); ?&gt;&lt;/label&gt;
          &lt;br /&gt;
          &lt;input
              class="widefat"
              type="file"
              name="audio_box" 
              id="audio_box" 
              value="&lt;?php 
                      echo esc_attr(
                          get_post_meta( $post-&gt;ID, 'audio_box', true ) 
                      );
                  ?&gt;" 
              size="30" 
          /&gt;
      &lt;/p&gt;
  &lt;?php }
  
  ?&gt;
  </code></pre>
  
  <p>Is there anything special I need to do here to get the file to upload to the media library on save?</p>
  
  <p>Thanks all! Long time listener, first time caller :)</p>