Cómo resaltar la página actual en el menú de navegación de WordPress

Cómo cargar archivos enviados por el usuario a la biblioteca de medios

Ultima actualización en por Debjit Saha

Extractos de IsItWP

¿Quiere subir los archivos enviados por el usuario a la biblioteca multimedia? Este fragmento de código manejará la carga de archivos a su biblioteca multimedia.

Instrucciones

  1. Agregue este código al archivo functions.php de su tema o en un complemento específico del sitio.
  2. Todos los archivos descargados se almacenan en la matriz $ _FILES, por lo que deberá buscar $_FILES matriz y pasar cada matriz de archivos a la upload_user_file() Una función. Puede usar este código en su controlador de formulario:
    
    if( ! empty( $_FILES ) ) {
      foreach( $_FILES as $file ) {
        if( is_array( $file ) ) {
          $attachment_id = upload_user_file( $file );
        }
      }
    }
    
  3. Recuerde que si desea que su formulario pueda manejar descargas de archivos, debe agregar el enctype="multipart/form-data" atribuir a <form> etiqueta.

function upload_user_file( $file = array() ) {

      require_once( ABSPATH . 'wp-admin/includes/admin.php' );

      $file_return = wp_handle_upload( $file, array('test_form' => false ) );

      if( isset( $file_return['error'] ) || isset( $file_return['upload_error_handler'] ) ) {
          return false;
      } else {

          $filename = $file_return['file'];

          $attachment = array(
              'post_mime_type' => $file_return['type'],
              'post_title' => preg_replace( '/.[^.]+$/', '', basename( $filename ) ),
              'post_content' => '',
              'post_status' => 'inherit',
              'guid' => $file_return['url']
          );

          $attachment_id = wp_insert_attachment( $attachment, $file_return['url'] );

          require_once(ABSPATH . 'wp-admin/includes/image.php');
          $attachment_data = wp_generate_attachment_metadata( $attachment_id, $filename );
          wp_update_attachment_metadata( $attachment_id, $attachment_data );

          if( 0 < intval( $attachment_id ) ) {
              return $attachment_id;
          }
      }

      return false;
}

Notar: Si es la primera vez que agrega fragmentos en WordPress, consulte nuestra guía sobre cómo copiar / pegar correctamente fragmentos en WordPress, para no romper accidentalmente su sitio.

Si le gustó este fragmento, consulte Cómo configurar el seguimiento de carga en WordPress con Google Analytics

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Ir arriba