Un utente ha chiesto π
Ciao!
Voglio ottenere tutte le sottocategorie della categoria principale
Come lo faccio:
1. Ottieni ParentID senza alcun contatore se sono un sottogatto o un genitore:
$category = get_the_category();
$hierarchy = array_reverse( get_ancestors( $category[0]->term_id, 'category' ) );
$hierarchy[] = $category[0]->term_id;
$parent_id=$hierarchy[0];
2. Ora che ho un ID genitore, posso modificare con sub -atat
$all_cats[]=( get_terms(array('category'),array('child_of' => $categories)));
3. Come rimuovere solo gli ID delle sottocategorie [βterm_idβ] + ID genitore?
(@alexmoise)
2 anni, 9 mesi fa
Ciao,
Gli oggetti WP_Term sono effettivamente ordinati per sottocategorie e puoi recitarli tramite “foreach”
A partire dalla tua variabile “$ all_cats” puoi usare questo:
foreach ($all_cats as $cat) {
// echo 'Cat obj: '; print_r($cat);
foreach ($cat as $kcat) {
// echo 'K Cat: '; print_r($kcat);
$kterm = get_term( $kcat );
$kid = $kterm->term_id;
$kslug = $kterm->slug;
echo 'Kid: '.$kid.' KSlug: '.$kslug.' | ';
}
}
Saluti!
(@bcworkz)
2 anni, 9 mesi fa
Vuoi rimuovere gli ID dei termini di tutti gli elementi a termine restituiti, giusto?
Se non hai bisogno di dati oggetto diversi dall’ID, usa l’argomento ‘fields’ di get_terms () per sostituire solo un insieme di ID invece dei termini oggetti. Se solo ID:
array('child_of' => $categories,
'fields' => 'ids')
Se hai bisogno del termine ID e di un termine genitore, puoi chiedere “id => genitore” come parametro dei campi. print_r () il ritorno mostra come sono organizzati i dati di ritorno.
Se hai altri requisiti per i dati dell’oggetto termine, rimuovi gli ID piegando tutti i risultati e costruendo un nuovo insieme di valori “term_id”.
Was this helpful?
0 / 0