Saya perlu membuat kotak meta kiriman khusus untuk es jenis kiriman saya "Slideshow" (jenis kiriman ini sudah dibuat). Setiap metabox akan menyimpan konten di setiap slide slide dan menyimpannya ke bidang khusus yang sesuai. Setiap metabox harus berisi bidang-bidang berikut:
- Judul (Bidang Teks)
- Gambar (Entah Bidang Teks untuk URL img atau idealnya Daftar Dropdown yang menunjukkan gambar mini dari gambar yang dilampirkan pada kiriman)
- Kode Sematan (Area Teks)
- Penjelasan (wysiwyg)
- Sembunyikan Slide (Centang untuk digunakan untuk menyembunyikan slide sementara tanpa menghapusnya)
- Hapus Slide (tombol yang menghapus isi kolom meta pos yang diisi oleh slide ini)
Saya juga ingin tombol di suatu tempat yang memungkinkan saya untuk "Menambahkan slide" sehingga ketika diklik, itu menambahkan lain "Slide" Custom Meta Box yang merupakan duplikat dari yang pertama tetapi menambahkan nomor tambahan untuk setiap bidang meta posting kustom. Saat ini saya hanya memiliki 15 metabox dan template Slideshow diatur sedemikian rupa sehingga jika hanya 5 dari metabox yang diisi maka hanya 5 slide yang ditampilkan.
Akhirnya, saya ingin dapat memesan ulang slide, baik dengan "Seret dan Jatuhkan" atau dengan Bidang Teks lain tempat saya dapat mengetikkan nomor pesanan.
Saya mendapatkannya hampir di mana saya membutuhkannya dengan plugin "More Fields" dan beberapa bantuan kode dari Rarst. Dengan plugin "More Fields", saya memiliki bidang-bidang berikut di setiap metabox:
- Judul (Bidang Teks)
- Gambar (Daftar tarik-turun gambar yang dilampirkan pada pos)
- Kode Sematan (Area Teks)
- Penjelasan (wysiwyg)
- Sembunyikan Slide (Centang untuk digunakan untuk menyembunyikan slide sementara tanpa menghapusnya)
Berikut ini adalah tangkapan layar bagaimana saya membuatnya melalui plugin "More Fields":
Masalah dengan ini adalah bahwa tidak ada cara untuk menghapus slide setelah dibuat karena "Bidang Lainnya" tidak digunakan di <?php delete_post_meta($post_id, $key, $value); ?>
mana pun. Masalah lain dengan plugin ini adalah terlalu tidak dapat diandalkan dan sering rusak dengan pembaruan.
Saya telah mampu menerapkan solusi serupa dengan metabox khusus saya sendiri yang meliputi:
- Judul (Bidang Teks)
- Gambar (Bidang Teks untuk URL img)
- Kode Sematan (Area Teks)
- Deskripsi (Area Teks)
- Sembunyikan Slide (Centang untuk digunakan untuk menyembunyikan slide sementara tanpa menghapusnya)
Dengan implementasi ini saya sepertinya tidak bisa mendapatkan beberapa bidang TinyMCE untuk bekerja atau kotak dropdown gambar. Kode TinyMCE tampaknya bekerja sampai saya menambahkan kode yang membuat salinan tambahan dari metabox pertama di mana titik saya mendapatkan error ini tepat di atas lapangan di mana tombol TinyMCE harus: Warning: array_push() [function.array-push]: First argument should be an array...
.
Juga, saat ini saya bergantung pada penulis saya untuk tahu untuk menaruh video atau gambar pada SETIAP BAIK dan tidak apa-apa, tetapi mungkin lebih baik untuk memiliki tombol radio yang memungkinkan mereka memilih mana yang slide (mungkin default untuk image) yang terikat pada pernyataan tampilan bersyarat dalam template tampilan slide.
Saya menangani pengunggahan gambar melalui kotak "Featured Image" bawaan di sidebar meskipun saya tidak keberatan dengan metabox khusus yang hanya mengatakan "Unggah Gambar" di bagian atas panel tulis.
Pada akhirnya saya mencari tampilan slide yang mirip dengan ini: http://www.nytimes.com/slideshow/2010/08/10/science/20100810angier-1.html . Saya ingin milik saya juga dapat memiliki video sebagai konten dalam slide, bukan gambar. Saya membutuhkan panel Admin yang intuitif dan mudah digunakan untuk penulis saya (mereka tidak terlalu ahli dalam bidang teknologi dan tidak dapat diandalkan menggunakan html dan / atau shortcode). Kalau-kalau itu tidak jelas dari contoh, setiap slide harus menghasilkan tampilan halaman baru.
Penataan ulang Drag'n'Drop bukan prioritas tinggi tetapi akan keren. Saya menemukan sebuah plugin yang menangani ini dengan sangat baik: SlideDeck . Sayangnya plugin tidak sesuai dengan kebutuhan saya tetapi cara mereka menangani pemesanan slide cukup bagus. Ini adalah metabox terpisah di bilah sisi yang memungkinkan Anda menyeret slide ke dalam urutan yang Anda suka. Ini juga cara Anda menambahkan slide, dengan mengklik tombol "Tambahkan Slide" yang menambahkan Metabox Slide lain ke panel tulis. Ini screenshotnya:
Anda juga dapat melihat lebih banyak tangkapan layar dalam aksi di repositori wordpress .
Ini semua kode saya:
Fungsi-fungsi pengaturan Jenis Posting Slideshow dan Pagination Slideshow: http://loak.pastebin.com/g63Gf186
Kode asli dari DeluxeBloggingTips.com (DBT) tempat saya mendasarkan Metabox saya dari: http://loak.pastebin.com/u9YTQrxf
Versi kode DBT yang saya modifikasi untuk memberi saya versi tambahan dari metabox yang sama: http://loak.pastebin.com/WtxGdPrN
Versi modifikasi dari kode DBT yang dibuat Chris Burbridge untuk memungkinkan beberapa contoh TinyMCE: http://loak.pastebin.com/Mqb3pKhx Dengan kode ini TinyMCE berfungsi.
Modifikasi saya dari kode Burbridge yang mencoba untuk memasukkan peningkatan saya dan bidang yang memungkinkan Anda memilih gambar dari daftar dropdown semua gambar yang dilampirkan pada posting: http://loak.pastebin.com/xSuenJTK Dalam upaya ini, TinyMCE rusak dan dropdown tidak berfungsi.
Ini mungkin tidak masalah tetapi jika Anda bertanya-tanya, ini adalah kode yang saya gunakan untuk menarik kode sematan dari meta pos kustom, ubah ukurannya, dan masukkan di pos: http://loak.pastebin.com / n7pAzEAw
Ini adalah versi yang diedit dari pertanyaan asli untuk mencerminkan status proyek saat ini dan menjawab pertanyaan yang diposting di komentar. Terima kasih kepada Chris_O karena telah memberikan hadiah ini. Juga, terima kasih kepada Rarst dan Justin karena telah membantu saya dengan banyak hal ini di forum ThemeHybrid.com . Saya telah menghabiskan berjam-jam untuk hal ini dan saya mandek (saya menghabiskan beberapa jam sendirian di Pertanyaan ini). Bantuan apa pun akan sangat dihargai.