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

 

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 .

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

  1. 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. 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!

    1. 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.

      1. 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 ??

  3. 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

    1. 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

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