¿Mi específicamente cómo recopilar una respuesta del objeto plUpload jQuery una vez que haya cargado los medios que desea y cómo se usaría la misma funcionalidad en una caja meta para crear una galería?
Hay un archivo específico que maneja esta funcionalidad: /wp-includes/js/plupload/handlers.dev.js
. Este archivo contiene todos los enganches y activadores que vinculan a Plupload (el sistema de archivos múltiples de arrastrar y soltar de terceros) al cargador.
Es posible que desee ver dos eventos: "FileUploaded" y "Upload Complete"
FileUploaded
Recuerde, el nuevo cargador es capaz de cargar varios archivos a la vez. Entonces, si hay algo que quieras hacer después de cargar cada archivo en la cola, usarás jQuery para vincular este evento.
WordPress, por ejemplo, enlaza lo siguiente:
uploader.bind('FileUploaded', function(up, file, response) {
uploadSuccess(file, response.response);
});'
La función uploadSuccess
aquí maneja miniaturas de imágenes, obtiene metadatos adjuntos del servidor y vincula los botones de edición / eliminación al objeto correcto.
UploadComplete
El evento UploadComplete se activará después de que todo en la cola haya terminado de cargarse. Si desea realizar una operación de limpieza general después de que finalice la descarga completa, esto es a lo que querrá enlazar.
WordPress, por ejemplo, enlaza lo siguiente:
uploader.bind('UploadComplete', function(up, files) {
uploadComplete();
});
La función uploadComplete
aquí solo habilita el botón "Insertar galería" en la página.
Lamentablemente ...
... no parece haber una manera de unirnos a estos eventos. El objeto uploader
existe dentro de un cierre en el archivo handlers.js
, y Plupload en sí no tiene una forma de hacer referencia a las instancias existentes. No puedes usar un simple selector de jQuery para olfatearlo y agregar un evento personalizado ... por lo que no tenemos suerte.
Por un lado, puede usar estos eventos personalizados a voluntad en sus propios sistemas. Simplemente haga girar su propia versión del archivo handlers.js
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 lo hizo el antiguo cargador de Flash. Así que mi mejor conjetura es que cualquier hacks o integraciones existentes que tengas deben continuar funcionando.
Probando ese supuesto
Tengo un complemento que utiliza el cargador existente para cargar archivos adjuntos y mostrar la URL en un campo meta personalizado. Funcionó como magia con el cargador antiguo, así que lo encendí en WP 3.3 para ver si funcionaba también con el cargador nuevo .
¡Y lo hace!
Entonces, si ya se está integrando con el cargador de medios, su sistema debería seguir trabajando con el nuevo sistema sin ningún cambio.