Créer une liste déroulante de vos articles par catégorie

Publié par Fred Le

Catégorie(s): Tutoriel Wordpress

 

Le code ci-dessous va vous permettre de créer une liste déroulante de vos articles, vous pourrez aussi ajouter une ou plusieurs catégories. Le code est simple d’utilisation et rapide a insérer et personnalisable avec le code css.


Ajouter le code suivant a l’endroit désirer dans votre thème (sidebar,single.php,page.php…)

   <?php

	$cat_id = get_cat_ID('0');

	$args=array(

	  'cat' => $cat_id,

	  'post_type' => 'post',

	  'post_status' => 'publish',

	  'posts_per_page' => -1,

	  'caller_get_posts'=> 1

	);

	$my_query = null;

	$my_query = new WP_Query($args);

	if( $my_query->have_posts() ) {

?>

	<form name="jump">

		<select name="menu">

			<?php

			  while ($my_query->have_posts()) : $my_query->the_post(); ?>

				<option value="<?php the_permalink() ?>"><?php the_title(); ?></option>

				<?php

			  endwhile;

			}

			?>

		</select>

		<input type="button" onClick="location=document.jump.menu.options[document.jump.menu.selectedIndex].value;" value="Lire l'article">

	</form>

<?php

	wp_reset_query();

?>

La première ligne du code  $cat_id = get_cat_ID('0'); va vous permettre de choisir une catégorie remplacer 0 par l’identifiant numérique de la catégorie de votre choix. Si vous voulez ajouter plusieurs catégories indiquer les identifiants  numérique comme ceci  4,8,7 .

Mots clés: , ,


10 Commenataires pour :

“Créer une liste déroulante de vos articles par catégorie”

  1. sylbau dit :

    Merci pour ce code qui me rend bien service. Une question tout de même, si je souhaite afficher dans la liste déroulante le résultat d’une recherche, que dois-je modifier?
    D’avance merci.

  2. sylbau dit :

    Merci pour le renseignement.

    Bonne année

  3. GuiGuiARG dit :

    Un GRAND merci, ce code est juste ce dont j’avais besoin. Simple et efficace, génial !

  4. Bonjour,
    J’aimerai utiliser ce code pour faire apparaître une liste déroulante de mes articles dans un widget. J’ai copié le code tel quel dans une zone “texte” ajoutée au widget voulu mais cela ne fonctionne pas. Pouvez-vous m’aider? Est-ce parce qu’il faut que j’ajoute le code directement dans un document .php de mon thème?

    Merci par avance!

    • Fred dit :

      Bonjour Anaïs,
      Pour intégrer le code dans votre sidebar il y a deux solutions :
      Ajouter directement le code dans le fichier sidebar.php de votre thème ou télécharger se fichierWidget puis mettez-le dans le répertoire plugin de wordpress puis activez-le et vous retrouverez le widget Liste déroulante articles dans apparence – Widgets.

      • Lucario dit :

        Bonsoir, j’ai téléchargé et installé le plug in mais je ne vois rien de changé, il y a t-il quelque chose d’autres de spécial à faire ??

  5. jibé49 dit :

    Bonjour,
    Le fait de mettre le n° de la catégorie ne fonctionne pas… du moins pour moi :
    $cat_id = get_cat_ID(‘3’);
    tous les articles sont affichés.
    Une idée ? un bug ?
    Merci
    JB

    • Fred dit :

      Bonjour jibé49,
      Essayer de mettre le l’identifiant slug de la catégorie comme ca :

      $cat_id = get_cat_ID('nom-de-la-categorie'); // Remplacer nom-de-la-categorie par la votre
      

      Vous trouver l’identifiant slug dans Article –> Catégorie –> Identifiant

Laisser un commentaire

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Pour affiché du code HTML, CSS, PHP, JAVASCRIPT utilisé le marqueur : [code][/code]