Come ottenere una lista di ID figli per una categoria specifica?

12 gen 2011, 19:45:30
Visualizzazioni: 1.26K
Voti: 0

Credo si possa fare con get_categories() o wp_list_categories() passando un parametro 'child_of', ad esempio, ma questo restituirebbe un dataset molto più grande di quello che mi serve.

Esiste una chiamata diretta che restituisca gli ID figli per qualsiasi categoria come una semplice lista (1,2,3,5, ecc.)?

0
Tutte le risposte alla domanda 1
8

Prova questo:

get_terms( 'category', "child_of=$parent&fields=ids" );
// dovrebbe restituire un array contenente gli ID dei figli del termine $parent
12 gen 2011 19:51:37
Commenti

@goldenapples: È corretto? var_dump(get_terms('category', "child_of=1&fields=ids" ))? (restituisce array(0) { })

Scott B Scott B
12 gen 2011 19:58:05

A me sembra corretto, ci sono figli da recuperare? E sono non vuoti? Guarda gli argomenti disponibili qui: http://core.trac.wordpress.org/browser/tags/3.0.4/wp-includes/taxonomy.php#L721

goldenapples goldenapples
12 gen 2011 20:05:31

basta aggiungere 'show_empty=true' al secondo parametro penso.

sanchothefat sanchothefat
12 gen 2011 20:07:34

In realtà, penso che il problema sia che sto passando a $parent l'ID della categoria, non il term_id. Ma non dovrebbero essere la stessa cosa? Sto cercando di elencare tutti i figli della categoria "non categorizzato", che ha ID tag_ID 1.

Scott B Scott B
12 gen 2011 20:07:37

Che ne dici di usare get_term_children(1,'category') ?

Scott B Scott B
12 gen 2011 20:21:55

Sì, l'ID della categoria dovrebbe essere lo stesso del suo term ID. Stai ricevendo una risposta senza errori, quindi la sintassi è corretta. Prova a rimuovere l'argomento child_of e vedi cosa ottieni...

goldenapples goldenapples
12 gen 2011 20:22:21

get_term_children dovrebbe funzionare, ma restituirà comunque tutti gli oggetti, cosa che pensavo non volessi. get_terms ha il parametro "fields", quindi potresti restituire solo gli ID.

goldenapples goldenapples
12 gen 2011 20:30:50

@GA, ho trovato il problema. Avevo precedentemente impostato un filtro list_terms_exclusions che escludeva i figli di "uncategorized" dal risultato.

Scott B Scott B
12 gen 2011 20:38:01
Mostra i restanti 3 commenti