web-dev-qa-db-fra.com

Afficher un seul résultat de "get_the_category_list"

J'aimerais que get_the_category_list affiche uniquement une ou deux catégories au lieu de all les catégories associées à la publication. Je n'ai pas pu trouver de résultats.

<?php echo get_the_category_list(); ?>

Toute aide serait appréciée

2
Zach Shallbetter
$categories = get_the_category();
if ( ! empty( $categories ) ) {
    echo '<a href="' . esc_url( get_category_link( $categories[0]->term_id ) ) . '">' . esc_html( $categories[0]->name ) . '</a>';
}
1
Knott

Une idée rapide serait de passer un séparateur simple, comme une virgule, et de couper du début à la fin du résultat.

Mais je pense que si vous voulez un meilleur contrôle de la sortie, il serait plus logique d’utiliser la fonction get_the_category() de niveau plus profond et de construire vous-même le balisage.

3
Rarst

Cela a fonctionné. Trouvé dans http://codex.wordpress.org/Function_Reference/get_the_category

<?php
$category = get_the_category(); 
echo $category[0]->cat_name;
?>
2
Zach Shallbetter

Si vous voulez limiter get_the_category à n’importe quel nombre, vous pouvez utiliser break;

Par exemple, si vous souhaitez limiter l’écho d’une catégorie + un lien à afficher, définissez uniquement 5 catégories.

     $i = 0;
      foreach((get_the_category()) as $cat) {
        echo '<a href="'.get_category_link($cat->cat_ID).'"> | ' . $cat->cat_name . '</a>';
        if (++$i == 5) break;
      } 
1
Wyck