Benutzerdefinierte Taxonomie als Kontrollkästchen oder Dropdown

10

Ich habe eine Zollsteuer für mein CPT registriert. Auf dem Bearbeitungsbildschirm wird das Steuer-Meta-Feld mit einem Feld für die automatische Vervollständigung angezeigt.

Ist es möglich, es stattdessen als Kontrollkästchen oder Dropdown anzuzeigen?

Julian F. Weinert
quelle

Antworten:

15

Sie haben das Argument 'hierarchisch' in Ihrer register_taxonomy wahrscheinlich nicht auf true gesetzt. Dies würde bedeuten, dass der Standardwert false ist, wodurch Sie eine tagähnliche Oberfläche erhalten.

Fügen Sie 'hierarchical' => trueIhrer register_taxonomy hinzu.

Vancoder
quelle
Oh ja ... Danke! ABER Wäre es jetzt möglich, es in ein Kontrollkästchen zu ändern oder sogar auszuwählen? Ich möchte dies als Einstellung in meine Plugin-Einstellungen einfügen können.
Julian F. Weinert
1
Wenn Sie die Hierarchie in true ändern, wird die Benutzeroberfläche in Kontrollkästchen auf Ihrem Bearbeitungsbildschirm für das CPT geändert.
Vancoder
Ja, aber ich möchte zwischen diesen Optionen wechseln können. Ich denke nicht, dass es eine gute Praxis ist, zwischen hierarchisch und nicht zu wechseln. Es ändert nicht NUR die Schnittstelle, habe ich recht?
Julian F. Weinert
Nun, hierarchisch macht es ... hierarchisch :) Sie können meines Wissens nicht zwischen den beiden Schnittstellen wechseln.
Vancoder
Diese Lösung erstellt kein Kontrollkästchen oder Dropdown-Menü.
Dev
17

Ab WP 3.7 ( https://core.trac.wordpress.org/ticket/14206 ) können Sie dieses Argument zu register_taxonomy hinzufügen:

'meta_box_cb' => 'post_categories_meta_box'

um die integrierte Metabox im Stil eines Kontrollkästchens zu erhalten, ohne Ihre Taxonomie hierarchisch gestalten zu müssen.

Sie können stattdessen auch Ihre eigene Rückruffunktion bereitstellen, um Ihre eigene Metabox zu erstellen (dh mit einem Dropdown-Menü).

Justin Foell
quelle
Großartig, genau das brauchte ich, ohne die Taxonomie hierarchisch gestalten zu müssen. Vielen Dank
Alexander Holsgrove
Das Problem dabei ist, dass die nicht hierarchischen und hierarchischen Taxonomien eine unterschiedliche Datenstruktur haben, die gespeichert werden muss. Informationen
P. Galbraith
Diese Lösung erstellt kein Kontrollkästchen oder Dropdown-Menü.
Dev
Das ist riesig! Danke ... Ich wusste nie, dass es existiert
Sam Holguin
-1

Wenn Sie den Begriff des vorhandenen Plugins in ein Kontrollkästchen ändern möchten, müssen Sie die vorhandene register_taxonomy () bearbeiten.

add_action( 'init', 'change_room_term_to_checkbox', 999);
function change_room_term_to_checkbox()
{
    $tax = get_taxonomy('roomtype');
    $tax->meta_box_cb = 'post_categories_meta_box';
    $tax->hierarchical = true;
}

'roomtype' ist der Name des Begriffs, der in register_taxonomy verwendet wird ('roomtype', array (.....

Nicola
quelle