it-swarm-vi.tech

Loại bài tùy chỉnh - Menu thả xuống phân loại?

Tôi đã tạo một loại bài đăng tùy chỉnh và thêm các hộp/trường meta khác nhau vào loại bài đăng tùy chỉnh này. Tất cả đều hoạt động tuyệt vời ngoại trừ một yếu tố ...

Thay vì sử dụng giao diện mặc định để chọn phân loại, tôi muốn chỉ có một menu thả xuống để người dùng chọn.

Ý tưởng ở đây là cho phép các quản trị viên thêm các yếu tố phân loại có thể được quản lý tập trung tuy nhiên đối với một bài đăng cụ thể chỉ được liên kết với một nguyên tắc phân loại.

Hơn nữa, tôi muốn thêm phần thả xuống này vào một trong các hộp meta hiện có của tôi.

Có ai tình cờ có bất kỳ mã mẫu nào cho phép tôi hoàn thành nhiệm vụ này không?

5
NetConstructor.com

Tôi đã trả lời câu hỏi này trên một bài đăng khác: Điều khoản tiết kiệm phân loại

1
NetConstructor.com

Đây là cách tôi đã làm điều này.

<?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

Tôi không có mã để làm điều này, nhưng nó rất đơn giản: tạo một danh sách thả xuống có tên tax_input[your_taxonomy_name], trong đó các giá trị là id nếu phân loại của bạn là phân cấp (như danh mục), giá trị nếu không (như thẻ). Nếu bạn sử dụng tên này, tôi nghĩ rằng nó được lưu tự động, không có thêm mã từ bạn. Bạn có thể tạo danh sách thả xuống với hàm wp_dropdown_categories, vượt qua tùy chọn selected với thuật ngữ phân loại nên được chọn. Hàm gọi lại tạo hộp meta lấy tham số $post, do đó bạn có thể nhận được thuật ngữ phân loại hiện tại từ đó.

Để vô hiệu hóa hộp meta thường được thêm vào, bạn có thể đặt show_ui thành false khi tạo phân loại hoặc xóa hộp meta trước khi nó được rút ra (tôi nghĩ rằng móc add_meta_boxes là một vị trí tốt). Nó sẽ có id tagsdiv-your_taxonomy_name nếu nó không được phân cấp hoặc your_taxonomy_namediv nếu có.

1
Jan Fabry