SummArg | Cursos y recursos para webmasters

04/06/2011

Subir archivos desde el Front-end en WordPress

Desde GoldenApplesdesign nos llega un snippet para colocar en nuestro functions.php, o en cualquier template que generemos para esta finalidad, que nos facilita subir archivos desde el front-end. Con esta función se utiliza el sistema de WordPress para obtener las miniaturas y la metadata que le corresponde al archivo adjunto al post, así como la asignación de una URL única para cada archivo.

function insert_attachment($file_handler,$post_id,$setthumb='false') {
if ($_FILES[$file_handler]['error'] !== UPLOAD_ERR_OK) __return_false();
require_once(ABSPATH . "wp-admin" . '/includes/image.php');
require_once(ABSPATH . "wp-admin" . '/includes/file.php');
require_once(ABSPATH . "wp-admin" . '/includes/media.php');
$attach_id = media_handle_upload( $file_handler, $post_id );
if ($setthumb) update_post_meta($post_id,'_thumbnail_id',$attach_id);
return $attach_id;
}

El formulario debe tener los siguientes atributos para funcionar:

<form method="post" enctype="multipart/form-data">

Para el caso de que no les funcione, pueden probar con este tutorial detallado que nos brinda voragine.net | Formulario para adjuntar imágenes en WordPress: wp_insert_attachment

 

Dejar un comentario

  1. Hola!
    Me he comprado una plantilla de WP para tener un espacio donde publicar información sobre mi boda, me gustaría que la gente pueda subir/publicar sus fotografias dentro de cuertos apartados que tengo para esto, pero hacerlo desde el admin panel puede resultar muy complejo para algunos usuarios… Podrías ayudarme a tener una forma muy fácil para que puedan hacerlo desde el frontend? Si hay algun costo ($) que cubrir lo platicamos, saludos. Tengo poco tiempo para resolverlo, me caso la primer semana de Octubre.

Dejar un comentario