Escludere più termini utilizzando la funzione get_terms()

18 ott 2016, 21:54:32
Visualizzazioni: 32.3K
Voti: 6

Sto usando questa funzione per filtrare i termini delle categorie da un calendario:

$terms = get_terms( TribeEvents::TAXONOMY, array( 'orderby' => 'name', 'order' => 'ASC','exclude' => array(77)) );

echo '<li>Categoria:</li>';
foreach ( $terms as $term ) {
  echo '<li><a href="'.$url.'?tribe_eventcategory='.$term->term_taxonomy_id.'">'.$term->name.'</a></li>';
}

Ho bisogno di escludere anche la categoria evento con ID 71. Come posso farlo?

2
Commenti

Il termine con ID 71 fa parte della TribeEvents::TAXONOMY oppure è un termine sotto la tassonomia standard category?

Dave Romsey Dave Romsey
18 ott 2016 22:28:59

Non sono sicuro di cosa intendi, ma dobbiamo rimuovere la categoria con id 71 esattamente come abbiamo fatto con la categoria con id 77.

Verneet Singh Verneet Singh
19 ott 2016 00:24:28
Tutte le risposte alla domanda 1
1
12

Con get_terms(), il parametro exclude accetta un array di ID dei termini, quindi basta aggiungere il secondo termine all'array:

$terms = get_terms( TribeEvents::TAXONOMY, array( 
                        'orderby' => 'name',  // Ordina per nome
                        'order'   => 'ASC',   // Ordine crescente
                        'exclude' => array( 77, 71 ),  // Escludi i termini con ID 77 e 71
) );

echo '<li>Categoria:</li>';  // Intestazione della lista
foreach ( $terms as $term ) {
    // Mostra ogni termine come elemento di lista con link
    echo '<li><a href="'.$url.'?tribe_eventcategory='.$term->term_taxonomy_id.'">'.$term->name.'</a></li>';
}
19 ott 2016 00:49:20
Commenti

Grazie, ho provato la stessa cosa ma a causa di un errore di battitura mancava una parentesi di chiusura. È stato risolto grazie :)

Verneet Singh Verneet Singh
19 ott 2016 00:59:08