¿Específicamente cómo recopilar una respuesta del objeto plUpload jQuery una vez que ha subido los medios que desea y cómo se usaría la misma funcionalidad en un meta cuadro para crear una galería?
Hay un archivo específico que se encarga de esta función: /wp-includes/js/plupload/handlers.dev.js
. Este archivo contiene todos los ganchos y disparadores que vinculan Plupload (el sistema de archivos múltiples de arrastrar / soltar de terceros) al cargador.
Es posible que desee ver dos eventos: "FileUploaded" y "Upload Complete"
Archivo subido
Recuerde, el nuevo cargador es capaz de cargar múltiples archivos a la vez. Entonces, si hay algo que desea hacer después de cargar cada archivo en la cola, usará jQuery para vincular este evento.
WordPress, por ejemplo, une lo siguiente:
uploader.bind('FileUploaded', function(up, file, response) {
uploadSuccess(file, response.response);
});'
La uploadSuccess
función aquí maneja las miniaturas de las imágenes, recupera metadatos de archivos adjuntos del servidor y vincula los botones de edición / eliminación al objeto correcto.
Carga completa
El evento UploadComplete se activará después de que todo en la cola haya terminado de cargarse. Si desea iniciar una operación de limpieza general después de que termine la descarga completa, esto es a lo que querrá unirse.
WordPress, por ejemplo, une lo siguiente:
uploader.bind('UploadComplete', function(up, files) {
uploadComplete();
});
La uploadComplete
función aquí solo habilita el botón "Insertar galería" en la página.
Desafortunadamente ...
... no parece haber una forma de vincularnos con estos eventos. El uploader
objeto existe dentro de un cierre en el handlers.js
archivo, y Plupload en sí no tiene una forma de hacer referencia a instancias existentes. No puede usar un simple selector jQuery para detectarlo y agregar un evento personalizado ... así que no tenemos suerte allí.
Por un lado, puede usar estos eventos personalizados a voluntad en sus propios sistemas. Simplemente handlers.js
haga girar su propia versión del archivo con sus propios eventos y podrá hacer lo que quiera. Pero para el cargador existente, estás atascado con la API existente.
Tenga en cuenta que el nuevo Pluploader llama a los mismos métodos al mismo tiempo que el antiguo cargador de Flash. Entonces, mi mejor conjetura es que cualquier pirateo o integración existente que tenga debe continuar funcionando.
Probar esa suposición
Tengo un complemento que usa el cargador existente para cargar archivos adjuntos y mostrar la URL en un metacampo personalizado. Funcionó como magia con el viejo cargador, así que lo activé en WP 3.3 para ver si también funcionaba con el nuevo cargador.
Y lo hace!
Entonces, si ya se está integrando con el cargador de medios, su sistema aún debería funcionar con el nuevo sistema sin ningún cambio.