Comprueba si la publicación pertenece a alguna categoría

2

En el bucle de mi página de inicio, tengo algo que mostrará en qué categoría está la publicación. Dirá algo así como "Publicado hace 4 horas en Deportes por ...". Sin embargo, cuando no hay una categoría establecida, omitirá la categoría (obviamente) y solo dirá "Publicado hace 4 horas en por ...". Mi pregunta es: ¿cómo compruebo si una publicación pertenece a la categoría cualquiera en WordPress?

Sé que la función in_category() existe, pero me gustaría evitar tener que escribir todas las categorías, en caso de que cambien, o lo que sea.

¡Gracias!

    
pregunta epaps 09.02.2011 - 18:40

3 respuestas

4

Puede usar is_object_in_term() . A pesar del nombre, también puede verificar la coincidencia de taxonomía si se omiten los términos.

is_object_in_term( get_the_ID(), 'category' );
    
respondido por el Rarst 09.02.2011 - 19:55
1

En lugar de usar get_category() o lo que sea para hacer eco directamente, intente usar get_the_category() , que simplemente devolverá una matriz de las categorías. Luego puede hojear esos elementos y verificar si están vacíos () o no.

Tal vez algo como:

$categories = get_the_category( $post->ID );
if( is_array(categories) && count($categories) > 0 ) {
  foreach( $categories as $category ) {
    $categories_string .= $category . ", ";
  }
  $categories_string = rtrim(", ", $categories_string);
}

if( !empty( $categories_string ) ) {
  echo "Posted 4 hours ago in {$categories_string} by ...";
} else {
  echo "Posted 4 hours ago by ...";
} 

* no probado

    
respondido por el editor 09.02.2011 - 18:54
1

utilizar has_category() wp 3.1+ necesario aunque

    
respondido por el Kenny Rodríguez 09.06.2012 - 07:34

Lea otras preguntas en las etiquetas