expondo anexos enviados para o front-end – delicado

provavelmente estou com algumas regras de bom senso aqui.

Existe uma maneira de utilizar wordpress ‘bake no arquivo anexo de manipulação para um formulário de upload dentro de um modelo de tema? sim, o front-end – eu sei.

Estou criando um site memorial e quero que as pessoas possam deixar “comentários” fotocharts textuais para uma pessoa querida que nossa comunidade perdeu.

mas estes não são usuários de wordpress. Eles são tias e crianças e tudo o resto.

Essas pessoas não conseguirem descobrir a UI de mídia padrão do WP e eu não quero que eles tenham que fazer login e continuar. muito confuso para eles. Se esse não fosse um projeto tão específico e delicado, não estaria tentando dobrar as regras.

Eu entendo que estou abrindo buracos de segurança permitindo que alguém carregue um arquivo, mas acho que é um pouco necessário. Todos os anexos carregados serão “pendentes”. Eu tenho o texto e as fotos definir um tipo de postagem personalizado, não como comentários, para que eu possa usar alguns dados de postagem incorporados.

e seria ótimo se eu pudesse utilizar worpdress construído em verificação de arquivos, manipulação, nomeação, tamanho … etc. mesmo que o gerenciamento de arquivos esteja no front-end.

Eu pensei que talvez eu pudesse usar: wp_handle_upload ()

incluindo ‘../wp-admin/includes/file.php’

mas isso não funcionou. Eu começo um erro fatal quando eu tento incluí-lo. É simplesmente TOTALMENTE contra as regras para include o administrador inclui dentro de modelos … provavelmente.

Eu poderia apenas fazer todo o processo de manipulação eu mesmo, mas pensei que talvez exista uma maneira de utilizar a funcionalidade do wordpress e que seja mais seguro.

ou há sugestões em outra rota que eu deveria estar indo completamente?

Infelizmente, isso é bastante sensível ao tempo … o serviço memorial está chegando em alguns dias.

muito obrigado

jonas

Solutions Collecting From Web of "expondo anexos enviados para o front-end – delicado"

aqui é a function que uso sempre que eu aceito uploads do front-end e você pode usá-lo em seus arquivos de modelo:

function insert_attachment($file_handler,$post_id,$setthumb='false') { // check to make sure its a successful upload 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; } 

Uso:

 // set $post_id to the id of the post you want to attach // these uploads to (or 'null' to just handle the uploads // without attaching to a post) if ($_FILES) { foreach ($_FILES as $file => $array) { $newupload = insert_attachment($file,$post_id); // $newupload returns the attachment id of the file that // was just uploaded. Do whatever you want with that now. } }