Di plugin saya, saya ingin menambahkan dua tombol ke Media Manager (di sebelah kiri "Sisipkan Ke Posting" di bagian "media-toolbar-primer"), dan hubungkan tindakan jQuery ke sana.
- Yang pertama - Tombol "Pilih Semua" harus memungkinkan untuk memilih semua gambar yang tersedia (hanya gambar), tergantung pada nilai opsi yang dipilih (mis. Semua Item Media, Diunggah ke Posting ini, dll.). Jadi jika "Semua Item Media" dipilih - semua gambar yang tersedia akan dipilih, jika "Diunggah ke posting ini" dipilih - hanya gambar yang dilampirkan ke posting saat ini yang akan dipilih.
- Yang kedua - "Kustom Sisipkan Ke Posting" - akan mendapatkan data gambar untuk semua gambar yang dipilih (sumber gambar ukuran penuh, teks alt, ukuran dll yang tersedia) dan sambil memungkinkan untuk membungkusnya dalam kode html tambahan - kode kembali ke editor tinymce.
Kode yang dikembalikan untuk tombol kedua dapat terlihat seperti ini:
<ul>
<li><img src="full/path/to/001.jpg" alt="alt text 1" /></li>
<li><img src="full/path/to/002.jpg" alt="alt text 2" /></li>
<li><img src="full/path/to/003.jpg" alt="alt text 3" /></li>
<li><img src="full/path/to/004.jpg" alt="alt text 4" /></li>
<li><img src="full/path/to/005.jpg" alt="alt text 5" /></li>
</ul>
Sejauh yang saya mengerti, satu-satunya cara adalah menggunakan menimpa tampilan Backbone yang sesuai, tetapi di samping itu, hanya itu yang saya tahu untuk saat ini.
Terimakasih atas bantuannya.
sumber
Saya tidak punya jawaban penuh untuk pertanyaan Anda, tapi ini awal yang bagus. Untuk menyesuaikan Media Manager baru, Anda harus mempelajari kode Backbone javascript di
wp-includes/js/media-views.js
. Sebagai contoh, berikut adalah plugin kecil yang menambahkan tombol "Pilih Semua" ke Bilah Alat "Sisipkan dari URL":custom.php
:custom.js
:Untuk tombol "Sisipkan ke dalam pos", saya sarankan untuk menggunakan kode pendek galeri. UI sudah ada untuk memilih gambar yang diinginkan dan menyisipkan kode pendek di tempat yang tepat di tinymce. Yang harus Anda lakukan adalah menulis format shortcode galeri Anda sendiri.
Lihatlah
gallery_shortcode
fungsiwp-includes/media.php
dan gunakanpost_gallery
filter.sumber
Thomas Griffin membuat contoh plugin, New Media Image Uploader , tentang cara bekerja dengan manajer media baru.
sumber
Saya baru saja menemukan sebuah kasus di WP 3.6 di mana jawaban aesqe (sangat berguna) menghasilkan gambar yang dimasukkan dua kali karena backbone
state.get("selection")._byId
termasuk keduanyaid
dancid
untuk setiap gambar yang dipilih.Mengubah
state.get("selection")._byId
untukstate.get("selection").models
memperbaiki ini untuk saya sambil menjaga atribut setiap objek.Mudah-mudahan ini akan membuat seseorang frustrasi. Saya akan memposting ini sebagai komentar daripada jawaban tetapi, sayangnya, saya tidak punya reputasi.
sumber