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

[ 1 ] Commentaire
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à mon code qui fonctionne (chez moi) :

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

<script type= »text/javascript »><!–
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.

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

  1. Keitchup dit :

    Merci pour ton script, très pratique !

    RépondreRépondre

Laisser un commentaire

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>