Subir archivos a un directorio determinado dentro de la carpeta Uploads en WordPress

05 de May, 2015

Para subir archivos a un directorio determinado en WordPress, debemos usar la siguiente función la cual se puede cargar en el functions del tema:

  1. //funcion para cambiar el directorio base de entrada
  2. function wpse_141088_upload_dir( $dir ) {
  3. return array(
  4. 'path' => $dir['basedir'] . '/tudirectorio',
  5. 'url' => $dir['baseurl'] . '/tudirectorio',
  6. 'subdir' => '/tudirectorio',
  7. ) + $dir;
  8. }

Luego llamar a la acción antes de subir el archivo

  1. add_filter( 'upload_dir', 'wpse_141088_upload_dir' );

Se sube el archivo

  1. $uploadedfile = $_FILES['fileToUpload'];
  2. $upload_overrides = array( 'test_form' => false );
  3. $movefile = wp_handle_upload( $uploadedfile, $upload_overrides );

Y se vuelve a los filtros anteriores

  1. remove_filter( 'upload_dir', 'wpse_141088_upload_dir' );