Tassonomia personalizzata come casella di controllo o menu a discesa


10

Ho registrato un'imposta personalizzata per il mio CPT. Nella schermata di modifica viene visualizzata la casella meta fiscale con un campo di completamento automatico.

È possibile invece visualizzarlo come caselle di controllo o menu a discesa?

Risposte:


15

Probabilmente non hai impostato l'argomento 'gerarchico' su true nella tua register_taxonomy. Ciò significherebbe che per impostazione predefinita è false, il che fornisce un'interfaccia simile a un tag.

Aggiungi 'hierarchical' => trueal tuo register_taxonomy.


Oh sì ... Grazie! MA sarebbe ora possibile cambiarlo in casella o anche selezionare? Voglio essere in grado di metterlo come impostazione nelle impostazioni dei miei plugin.
Julian F. Weinert,

1
Il passaggio da gerarchico a vero dovrebbe cambiare l'interfaccia in caselle di controllo nella schermata di modifica per il CPT.
vancoder,

Sì, ma voglio essere in grado di passare tra queste opzioni. Non penso che sia buona norma passare da gerarchico a no. Non cambia SOLO l'interfaccia, vero?
Julian F. Weinert,

Bene, gerarchico lo rende ... gerarchico :) Non è possibile passare tra le 2 interfacce per quanto ne so.
vancoder,

Questa soluzione non crea una casella di controllo o un menu a discesa.
Dev

17

A partire da WP 3.7 ( https://core.trac.wordpress.org/ticket/14206 ) puoi aggiungere questo argomento a register_taxonomy:

'meta_box_cb' => 'post_categories_meta_box'

per ottenere il metabox incorporato nella categoria di casella di controllo senza dover rendere gerarchica la tassonomia.

Inoltre potresti invece fornire la tua funzione di callback per creare il tuo metabox (ovvero con un menu a discesa).


Fantastico, questo è esattamente ciò di cui avevo bisogno senza dover rendere la tassonomia gerarchica. Grazie
Alexander Holsgrove il

Il problema è che le tassonomie non gerarchiche e gerarchiche hanno una diversa struttura di dati che deve essere salvata. Per come risolvere questo problema, consultare qui gist.github.com/gschoppe/…
P. Galbraith,

Questa soluzione non crea una casella di controllo o un menu a discesa.
Dev

Questo è enorme! Grazie ... Non ho mai saputo che esistesse
Sam Holguin,

-1

se si desidera modificare il termine del plug-in esistente in casella di controllo, è necessario modificare register_taxonomy esistente ().

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' è il nome del termine usato su register_taxonomy ('roomtype', array (.....

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.