Khusus saya bagaimana mengumpulkan respons dari objek jQuery plUpload setelah ia mengunggah media yang Anda inginkan dan bagaimana orang akan menggunakan fungsi yang sama dalam kotak meta untuk membuat galeri?
Ada file tertentu yang menangani fungsi ini: /wp-includes/js/plupload/handlers.dev.js
. File ini berisi semua kait dan pemicu yang mengikat Plupload (sistem multi-file drag / drop pihak ketiga) ke pengunggah.
Ada dua peristiwa yang mungkin ingin Anda lihat: "FileUploaded" dan "Upload Complete"
FileUploaded
Ingat, pengunggah baru mampu mengunggah banyak file sekaligus. Jadi, jika ada sesuatu yang ingin Anda lakukan setelah setiap file dalam antrian diunggah, Anda akan menggunakan jQuery untuk mengikat ke acara ini.
WordPress, misalnya, mengikat yang berikut ini:
uploader.bind('FileUploaded', function(up, file, response) {
uploadSuccess(file, response.response);
});'
The uploadSuccess
Fungsi disini menangani thumbnail image, mengambil lampiran meta dari server, dan mengikat mengedit / tombol hapus untuk objek yang tepat.
UploadComplete
Acara UploadComplete akan diaktifkan setelah semua yang ada dalam antrian selesai diunggah. Jika Anda ingin menjalankan operasi pembersihan umum setelah seluruh unduhan selesai, inilah yang ingin Anda ikat.
WordPress, misalnya, mengikat yang berikut ini:
uploader.bind('UploadComplete', function(up, files) {
uploadComplete();
});
The uploadComplete
Fungsi sini hanya memungkinkan "Insert galeri" tombol pada halaman.
Sayangnya ...
... sepertinya tidak ada cara bagi kita untuk mengikat peristiwa ini. The uploader
objek ada dalam penutupan di handlers.js
file, dan Plupload sendiri tidak memiliki cara untuk referensi contoh yang ada. Anda tidak dapat menggunakan pemilih jQuery sederhana untuk mengendusnya dan menambahkan acara khusus ... jadi kami kurang beruntung di sana.
Di satu sisi, Anda dapat menggunakan acara khusus ini sesuka hati di sistem Anda sendiri. Putar saja versi handlers.js
file Anda sendiri dengan acara Anda sendiri dan Anda dapat melakukan apa pun yang Anda inginkan. Tetapi untuk pengunggah yang ada, Anda terjebak dengan API yang ada.
Perlu diingat, bahwa Pluploader baru memanggil metode yang sama pada waktu yang sama seperti yang dilakukan pengunggah Flash lama. Jadi tebakan terbaik saya adalah setiap retas atau integrasi yang ada harus terus bekerja.
Menguji asumsi itu
Saya memiliki plugin yang menggunakan pengunggah yang ada untuk mengunggah lampiran file dan menampilkan URL di bidang meta khusus. Ini bekerja seperti sulap dengan pengunggah lama, jadi saya menyalakannya di WP 3.3 untuk melihat apakah itu bekerja dengan pengunggah baru juga.
Dan itu benar!
Jadi, jika Anda sudah berintegrasi dengan pengunggah media, sistem Anda harus tetap bekerja dengan sistem baru tanpa perubahan apa pun.