it-swarm-id.com

Jenis Pos Kustom - Menu Dropdown Taksonomi?

Saya telah membuat jenis posting khusus dan menambahkan berbagai kotak/bidang meta ke jenis posting kustom ini. Semua bekerja sangat baik kecuali untuk satu elemen ...

Alih-alih menggunakan antarmuka default untuk memilih taksonomi saya ingin hanya memiliki menu drop-down bagi pengguna untuk memilih.

Idenya di sini adalah untuk memungkinkan admin untuk menambahkan elemen taksonomi yang dapat dikelola secara terpusat namun untuk pos tertentu hanya dikaitkan dengan satu taksonomi.

Lebih jauh lagi, saya lebih suka menambahkan drop-down ini ke salah satu kotak meta yang ada.

Adakah yang kebetulan memiliki kode sampel yang memungkinkan saya menyelesaikan tugas ini?

5

Saya menjawab pertanyaan ini di pos berbeda: Menyimpan Ketentuan Taksonomi

1

Beginilah cara saya melakukan ini.

<?php $tax = get_object_taxonomies('TAXONOMY_NAME');
    $taxterms = get_terms( $tax, 'orderby=count&offset=1&hide_empty=0&fields=all' );
?>
<select name='tax' id='tax'>
    <option value='' <?php if (!count( $names )) echo "selected";?>>Select Term</option>
    <?php 
    foreach ( $taxterms as $term ) { 
        echo '<option value="' . $term->slug . '" selected>' . $term->name . '</option>',"\n"; 
    } ?>
</select>
4
jaredwilli

Saya tidak punya kode untuk melakukan ini, tetapi harus sederhana: buat dropdown bernama tax_input[your_taxonomy_name], di mana nilainya id jika taksonomi Anda hierarkis (seperti kategori), nilai jika tidak (seperti tag) Jika Anda menggunakan nama ini, saya pikir itu disimpan secara otomatis, tanpa kode tambahan dari Anda. Anda dapat membuat dropdown dengan fungsi wp_dropdown_categories, meneruskan opsi selected dengan istilah taksonomi yang harus dipilih. Fungsi panggilan balik yang membuat kotak meta mendapatkan parameter $post, sehingga Anda bisa mendapatkan istilah taksonomi saat ini dari sana.

Untuk menonaktifkan kotak meta yang biasanya ditambahkan, Anda dapat mengatur show_ui menjadi false saat membuat taksonomi, atau menghapus kotak meta sebelum ditarik (saya pikir kait add_meta_boxes adalah tempat yang baik). Ini akan memiliki id tagsdiv-your_taxonomy_name jika tidak hierarkis, atau your_taxonomy_namediv jika ya.

1
Jan Fabry