Afficher les termes (catégories) de la taxonomie de façon aléatoire

1 mai 2018 | Tutoriels | 0 | Modifié le : 29 mai 2018

Dans ce tutoriel, nous allons voir comment afficher des termes de taxonomies de façon aléatoire. Pour expliquer en quelques mots, nous avons par exemple un Post Type évènement, qui a une taxonomie du nom de : Type d’évènement. On consulte une page d’un type d’évènement, et bien en dessous de ses résultats concernant un terme, on souhaiterait dessous afficher d’autres termes aléatoires sauf celui que l’on consulte.

C’est un genre de termes reliés mais de façon aléatoire.

Ici dans l’exemple :
Post Type : Évènements
Taxonomie : Type d’évènement (Correspond à la catégorie)
Template utilisé : taxonomy-type-evenements.php

Donc nous allons créer une petite requête qui va nous permettre de faire ça. Nous allons donc faire un get_terms et y mettre nos arguments. Ensuite nous demandons un résultat de façon aléatoire et nous donnons un indice de total autorisé. Pour afficher les résultats, on fait une boucle avec un foreach de nos termes.

On n’oublie pas d’exclure le terme que l’on consulte avec le get_queried_object_id(); que l’on stocke dans une variable avant notre get_terms ….

Afficher les termes (catégories) de la taxonomie de façon aléatoire

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
<?php //Get all terms 
   $currentid = get_queried_object_id(); 
   $terms = get_terms( 
   array( 
    'taxonomy' => 'type-evenements',
    'hide_empty'    => false,
    'exclude'       => array($currentid)
   ) );
   // Randomize Term Array
   shuffle( $terms );
   // Grab Indices 0 - 5, 6 in total
   $randterms = array_slice( $terms, 0, 2 );
?>
<?php foreach ($randterms as $term) { ?>
<?php /// Votre div dynamique désirée
<?php endforeach; wp_reset_postdata(); ?>

Donc, en utilisant ce get_terms, veuillez changer vos arguments par les vôtres et pourquoi ne pas en ajouter.

#Archive Post Type, #Custom Post Type