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]