Extrair um valor retornado por uma função.

  • Autor Autor Okaro
  • Data de início Data de início
Tradução em andamento: em alguns minutos este tópico estará em português. Por enquanto, o conteúdo está no original em espanhol. Ver original
Okaro

Okaro

Épsilon
Usuário com poucas negociações! Use sempre o saldo do ForoBeta!
Saludos!!

No soy nada bueno con esto del Jquery, así que lo poco que hago es a base de tutoriales. El caso es que he encontrado esta función que lo que hace en Wordpress, es subir una imagen del ordenador local.

Inserir CODE, HTML ou PHP:
function funcThree () {   
  var formData = new FormData();
  formData.append("action", "upload-attachment");
                
  var fileInputElement = document.getElementById("input-image-upload");
  formData.append("async-upload", fileInputElement.files[0]);
  formData.append("name", fileInputElement.files[0].name);
                                      
  //also available on page from _wpPluploadSettings.defaults.multipart_params._wpnonce
  <?php $my_nonce = wp_create_nonce('media-form'); ?>
  formData.append("_wpnonce", "<?php echo $my_nonce; ?>");
  var xhr = new XMLHttpRequest();
  xhr.onreadystatechange=function(){
   if (xhr.readyState==4 && xhr.status==200){
      console.log(xhr.responseText);
    }
  }

  xhr.open("POST","/wp-admin/async-upload.php",true);
  xhr.send(formData);
}

La imagen del formulario la sube correctamente a la librería de Wordpress, pero necesito saber cual es el ID que le asigna a la imagen que acaba de subir.

En la consola veo el resultado de la operación, que es la siguiente:

Inserir CODE, HTML ou PHP:
{"success":true,"data":{[B]"id":2038[/B],"title":"panpie0043775","filename":"panpie00437754.jpg","url":"http:\/\/www.xxx.com\/wp-content\/uploads\/2015\/09\/panpie00437754.jpg","link":"http:\/\/www.xxx.com\/?attachment_id=2038","alt":"","author":"34","description":"","caption":"","name":"panpie0043775-5","status":"inherit","uploadedTo":0,"date":1443543918000,"modified":1443543918000,"menuOrder":0,"mime":"image\/jpeg","type":"image","subtype":"jpeg","icon":"http:\/\/www.xxx.com\/wp-includes\/images\/media\/default.png","dateFormatted":"septiembre 29, 2015","nonces":{"update":"853005925d","delete":"8a8cccd497","edit":"3d374e2b29"},"editLink":"http:\/\/www.xxx.com\/wp-admin\/post.php?post=2038&action=edit","meta":false,"authorName":"Berberecho","filesizeInBytes":55572,"filesizeHumanReadable":"54 kB","sizes":{"full":{"url":"http:\/\/www.xxx.com\/wp-content\/uploads\/2015\/09\/panpie00437754.jpg","height":700,"width":500,"orientation":"portrait"},"pluto-index-width":{"height":560,"width":400,"url":"http:\/\/www.xxx.com\/wp-content\/uploads\/2015\/09\/panpie00437754-400x560.jpg","orientation":"portrait"}},"height":700,"width":500,"orientation":"portrait","compat":{"item":"","meta":""},"filesize":"54 kB"}}

Puedo obervar casi al principio que ahí está el id que quiero obtener, pero no tengo ni idea de como hacerlo.

Si alguien me pone sobre la pista, estaría muy agradecido.

Un Saludo.
 
Última edição:
Foi útil? Participe da conversa

Com sua conta grátis você pode responder, mandar mensagem privada ao autor e comprar com Saldo retido: o pagamento é liberado quando você recebe o combinado.

Leva 30 segundos · você volta a este tópico ao terminar
Intenta algo como:

PHP:
var json = JSON.parse(xhr.responseText);
var id = json.data.id;

Saludos.
 
Buff!! Gracias, pero de corazón!!

Llevaba toda la tarde y no sabía como hacerlo.

Ale, algo que no se me olvidará si me vuelve a pasar.

Gracias de nuevo.

Un Saludo.
 

Tópicos similares

Voltar
Topo