wordpress media_handle_upload para trabalhar com blob ou base64

4

maiúsculas e minúsculas: estou tentando fazer o upload do áudio do registro da web para o post de wordress. então eu tenho formulário com post id e arquivo de tipo de entrada "audio_upload"

abaixo está meu snippet de código

 $audio_meta_value = media_handle_upload( 'audio_upload', $pid);

acima do código funciona bem.

Problema: Eu adicionei webrecord ao meu formulário na parte inferior, eu sou capaz de salvar o áudio via código abaixo usando ajax, mas estou preso com a adição de áudio para o meu post que.

Qualquer solução possível? 1: Existe alguma função wordpress que aceita dados blob / base64 encode em vez de $ _FILES para salvar anexo.

2: posso acrescentar dados blob ao arquivo de entrada no formulário para que meu fluxo anterior funcione

código para salvar áudio via ajax

Fr.voice.export(function(blob){
  var data = new FormData();
  data.append('file', blob);

  $.ajax({
    url: "server.php",
    type: 'POST',
    data: data,
    contentType: false,
    processData: false,
    success: function(data) {
      // Sent to Server
    }
  });
}, "blob");

Upload.php

if(isset($_FILES['file'])){
  // $audio = file_get_contents($_FILES['file']['tmp_name']);
  $audio = $_FILES['file']['tmp_name'];
  $newpath = "soundrec/uploaded_audio".time().".wav";
  rename($audio,$newpath);
  echo $newpath;
}
    
por gaurav 18.09.2016 / 09:44

1 resposta

1

você pode fazer isso com a função wp_handle_sideload enlace

Etapas para fazer isso:

  1. crie um arquivo temporário com o conteúdo de que você precisa
  2. passe este nome de arquivo para a função wp_handle_sideload
por mmm 18.09.2016 / 11:05

Tags