Excluir múltiples términos usando la función get_terms()

18 oct 2016, 21:54:32
Vistas: 32.3K
Votos: 6

Estoy usando esta función para filtrar términos de categoría de un calendario:

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

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

Necesito excluir también la categoría de eventos con ID 71. ¿Cómo puedo hacer eso?

2
Comentarios

¿El término con ID 71 es parte de TribeEvents::TAXONOMY o es un término bajo la taxonomía estándar category?

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

No estoy seguro de lo que quieres decir, pero necesitamos eliminar la categoría con id 71 de la misma manera que lo hicimos con la categoría con id 77.

Verneet Singh Verneet Singh
19 oct 2016 00:24:28
Todas las respuestas a la pregunta 1
1
12

Con get_terms(), el parámetro exclude acepta un array de IDs de términos, así que simplemente añade el segundo término al array:

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

echo '<li>Categoría:</li>';
foreach ( $terms as $term ) {
    echo '<li><a href="'.$url.'?tribe_eventcategory='.$term->term_taxonomy_id.'">'.$term->name.'</a></li>';
}
19 oct 2016 00:49:20
Comentarios

Gracias, lo intenté hacer igual pero debido a un error tipográfico faltaba un corchete de cierre. Ya está solucionado, gracias :)

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