Tout savoir sur WordPress
Tutoriel WordPress

Ajouter un tri par catégorie à la recherche de WordPress

Pour affiner les résultats, il peut être judicieux d’ajouter un tri par catégorie dans le formulaire de recherche sur WordPress.

Il pourrait être utile de permettre à vos lecteurs de filtrer les résultats de la recherche en ciblant une catégorie spécifique. Ceci peut se faire en mettant en place un menu déroulant contenant chacune de vos catégories grâce à la fonction wp_dropdown_categories() de WordPress.

Créer ou copier le code suivant dans le fichier searchform.php à la racine de votre thème :

<form method="get" id="searchform" action="<?php echo esc_url( home_url( '/' ) ); ?>">
    <label for="s">Recherche</label>Catégorie: </label>
    <?php wp_dropdown_categories('show_option_all=Toutes les catégories' ); ?>
    <input type="submit" class="submit" name="submit" id="searchsubmit" value="Rechercher" />
</form>

Tri par catégorie dans Twentyeleven
Exemple de tri par catégorie dans Twentyeleven

Cet article a été mis à jour il y a 2380 jours - Il n'est peut être plus à jour !

Article écrit par Jonathan B.

Jonathan est le co-fondateur de WP Media, startup connue pour être l’auteur de WP Rocket et Imagify. Il est aussi co-organisateur du WordCamp Lyon et Paris.

8 Commentaires

  1. Bonjour, existe il la meme chose mais pour les custom post type ?? je n’ai rien trouvé : wp_dropdown_categories ….

    Merci

  2. Bonsoir,
    C est moi qui ait déjà posé la question pour un formulaire bien spécifique ….
    Alors je me disais qu avec ceci ça pourrait marcher également. Mais comme j ai fait ça a basé de custom post type et le « wp dropdown catégories » et le formulaire de recherche personnalisé ne fonctionnent pas.

  3. je vais me repondre a moi-même, j’ai utilisé ce plugin : wp_custom_fields_search ; j’ai rajouté les bonnes taxo et hop je peux filtrer sur ce que je veux…

    Ce n’est pas vraiment un formulaire personnalisé comme je le voulais au départ , mais bon a défaut c ‘est mieux que rien ,
    Bon week end a vous

  4. Génial le sélecteur, je viens de faire quelques tests.

    Je pense toutefois qu’il faut le servir en seconde intention : pour une première recherche, le formulaire de base me semble amplement suffisant. Par contre, ce code me semble tout a fait approprié sur une recherche avancée, à partir de la page catégorie ou mot-clef. Je le garde sous la main…

  5. Bonsoir,

    Super article, marche super merci beaucoup.

    Mais je me pose une question, au lieu de sélectionner toutes les catégories du site, on ne peux pas les rajouter une par une ? (pour en sélectionner que quelques unes pour la recherche)

    Merci d’avance

  6. @Prisci33500 : Je ne comprends pas votre question. Mais à vous d’adapter le code en fonction de votre besoin.

  7. Je ne connais pas grand chose en codage justement…

    Au lieu de mettre : show_option_all=Toutes les catégories’
    Ce qui affiche toutes les catégories de mon site.

    Je ne peux pas en sélectionner que quelques unes ?
    par exemple : show_option_all=Catégorie1, Catégorie3, Catégorie4′
    Ce qui afficheras dans la liste que les Catégories 1, 3 et 4

    Merci d’avance

vulputate, Donec odio massa sed venenatis