Si vous avez besoin d’afficher des taxonomies dans un loop ou en dehors, que vous souhaitez en afficher le nom ou le lien, ce snippet devrait vous être bien utile.
Notez que la fonction retourne une chaîne, mais ne l’affiche pas, vous pouvez donc facilement l’utiliser dans un test conditionnel ou tout simplement pour afficher le résultat grâce à un echo ou print.
function get_bweb_custom_taxo($taxo, $show_link=null, $post_id=null){ if(empty($post_id)) { $post_id= get_the_ID();} $terms = get_the_terms( $post_id, $taxo ); //on récupère l'object de la taxo foreach ( $terms as $term ) { if($show_link == true){ return '<a href="'.get_term_link($term).'" title="'.$term->name.'">'.$term->name.'</a>'; } else { return $term->name; } } }
Il suffit donc de faire un echo de cette fonction dans vos pages pour afficher la taxo désirée.
Pour afficher le lien de la taxo dans un loop :
echo get_bweb_custom_taxo('ma_taxo', true);
Pour afficher le lien de la taxo en dehors d’un loop :
echo get_bweb_custom_taxo('ma_taxo', true, id_du_poste);
Pour afficher le nom de la taxo dans un loop :
echo get_bweb_custom_taxo('ma_taxo');
Pour afficher le lien de la taxo en dehors d’un loop :
echo get_bweb_custom_taxo('ma_taxo', false, id_du_poste);