web-dev-qa-db-fra.com

Comment limiter le nombre de termes

Bonjour, j'ai créé une taxonomie en type de message personnalisé qui agit comme une catégorie.

alors j'ai créé des termes qui agissent comme des catégories.

j'ai créer un widget qui montre tous les termes de la taxonomie. tout fonctionne très bien.

mais je ne peux pas comprendre comment limiter le nombre de termes à afficher.

j'ai créé une entrée dans mon widget. Donc, si je mets un nombre, je veux que le widget se limite à ne montrer que ce nombre de termes.

merci pour l'aide!

le code pour afficher tous les termes est:

$terms = get_terms('new_category');
echo '<ul>';
foreach ($terms as $term) {
    $term_link = get_term_link( $term, 'new_category' );
    echo '<li><a href="' . $term_link . '"><div>' . $term->name . '</div></a></li>';

}
echo '</ul>';
2
need-help
number 
    (integer) The maximum number of terms to return. Default is to return them all. 

http://codex.wordpress.org/Function_Reference/get_terms

Alors...

$terms = get_terms('new_category',array('number' => 5));

Mais il y a de fortes chances que certains de vos termes ne se présentent jamais. Vous obtiendrez les cinq premiers ou les cinq derniers (dans l'exemple) en fonction de l'ordre de tri. Vous voudrez peut-être quelque chose comme ceci à la place:

$terms = get_terms('category');
if (!is_wp_error($terms)) {
  $pick = ($pick <= count($terms)) ?: count($terms);
  $Rand_terms = array_Rand($terms, $pick);
  echo '<ul>';
  foreach ($Rand_terms as $key => $term) {
    $term =  $terms[$term];
    $term_link = get_term_link( $term );
    var_dump($term_link);
    if (!is_wp_error($term_link)) {
      echo '<li><a href="' . $term_link . '"><div>' . $term->name . '</div></a></li>';
    }
  }
  echo '</ul>';
}
3
s_ha_dum

changer la valeur du nombre si nécessaire

$terms = get_terms('new_category', 'number=10');
echo '<ul>';
foreach ($terms as $term) {
    $term_link = get_term_link( $term, 'new_category' );
    echo '<li><a href="' . $term_link . '"><div>' . $term->name . '</div></a></li>';

}
echo '</ul>';
1
Anjum
$terms = get_terms('new_category', array('number' => 4));
echo '<ul>';
foreach ($terms as $term) {
    $term_link = get_term_link( $term, 'new_category' );
    echo '<li><a href="' . $term_link . '"><div>' . $term->name . '</div></a></li>';

}
echo '</ul>';
1
junaid khan