Afficher la liste des catégories en liste déroulante pour votre blog WordPress

[ 4 ] Commentaires
Share

Allez hop, il n’est pas trop tard : voilà un petit truc pour afficher la liste des catégories de WordPress en une liste déroulante plutôt que dans une liste classique, qui, à la longue, prend de plus en plus de place…

Donc j’ai eu beau parcourir les blogs qui proposaient des astuces, mais je n’ai pas trouvé d’astuce valable. C’est idiot (ou pas du tout), mais la bonne méthode se trouvait… sur le site officiel (tellement classique).

Voilà le code qui fonctionne (chez moi) :

</pre>
<h2>Catégories</h2>
<pre>
<!--?php wp_dropdown_categories('show_option_none=Catégories&orderby=name&show_count=1&hierarchical=0'); ?-->

<script type="text/javascript">// <![CDATA[
 var dropdown = document.getElementById("cat"); function onCatChange() { if ( dropdown.options[dropdown.selectedIndex].value > 0 ) {
location.href = "<?php echo get_option('home'); ?>/?cat="+dropdown.options[dropdown.selectedIndex].value;
}
}
dropdown.onchange = onCatChange;
// ]]></script>

Alors attention, car on ne peut pas transposer directement les otpions utilisées précédemment avec la fonction wp_list_cats() sur la fonction wp_dropdown_categories().

Ce qui fait que pour avoir un affichage avec les même options, j’ai changé comme suit :

<? php wp_list_cats('sort_column=name&optioncount=1&hierarchical=0');  ?>

par

<?php wp_dropdown_categories(‘show_option_none=Catégories&orderby=name&show_count=1&hierarchical=0′); ?>

… sachant que les attributs et les différentes valeurs qu’ils peuvent prendre sont expliqués sur la page précédemment linkée.

Vous serez peut-être intéressé :

4 commentaires sur ce billet

  1. Keitchup dit :

    Merci pour ton script, très pratique !

    RépondreRépondre
  2. stéph dit :

    Bonjour,

    Auriez vous l’amabilité de me dire dans quel fichier je dois faire cette modif ? impossible de retrouver wp_list_cats…d’avance merci 🙂
    Je suis sur le template sampression lite et avoir les catégories en cases à cocher est juste affreux en terme d’ergonomie 🙁

    RépondreRépondre
  3. Louis dit :

    @stéph: Il est possible que wp_list_cats n’existe plus car depuis, elle aurait été changée…

    RépondreRépondre
  4. Lionel dit :

    Merci Louis pour ton script qui a l’air d’être exactement ce que je cherche. Par contre, étant totalement néophyte (ou pas très loin), peux-tu me dire dans quel fichier je dois l’intégrer. Merci d’avance.

    RépondreRépondre

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *