Afficher un article spécifique par son ID sous WordPress

Faire une requête PHP en fonction de l’ID d’un post de votre blog WordPress tel l’objet de ce tutoriel vidéo. Vous apprendrez différentes techniques en PHP pour arriver à vos fins.

Dans cet exemple, nous aurons recours à la fonction get_post de WordPress – notez ici l’absence du pluriel dans l’intitulé. Celle-ci n’étant pas très explicité pour les néophytes sur le codex, je vous propose de l’utiliser de manière plus détaillée :

<?php
 $id = 1;
 $billet = get_post($id);
 $title = $billet->post_title;
 $date = $billet->post_date;
 $contenu = $billet->post_content;
 $contenu = apply_filters('the_content', $contenu);
 $contenu = str_replace(']]>', ']]&gt;', $contenu);
?>

 <div id="billet">
 <?php echo "<h1>$title</h1><p>$contenu</p><strong>$date</strong>"; ?>
 </div>

L’idée consiste à indiquer dans un premier temps l’ID du billet à retourner. Pour obtenir l’identifiant, il suffit de survoler un élément dans le back office de WordPress avec le pointeur de la souris pour que ce dernier s’affiche dans la barre de détails du navigateur.

Capture d'écran - Affichage de l'ID de l'article
Le numéro correspond à l’ID du billet

Ensuite, nous créons plusieurs variables qui vont récupérer le contenu, le titre et la date. Il est possible d’obtenir de nombreux autres éléments comme l’indique la liste sur le codex.

Un besoin simple mais pas vraiment facile à réaliser sans un minimum de connaissance. Bien entendu, des plugins vous permettront de faire la même chose… mais probablement pas en si peu de lignes de code et à l’emplacement de votre choix.

13 commentaires

  1. remwks

    Bonsoir Denis,
    avant tout merci pour ce podcast, cependant une petite question mai venu en le visionnant.
    Comment tu fait pour afficher le contenu d’un custom post type car il ne semble qu’il ne possède pas d’id (visible) ?

  2. Marc

    Bonjour,
    j’aimerais comprendre pourquoi un JQUERY Slider Pro (http://sliderpro.net/) ne fonctionne pas. J’ai bien rentrer la formule : [slider_pro id= »5″] sur la page mais il ne m’affiche que des images fixes.
    Faut-il rentrer une autre ligne de code pour faire fonctionner certains JQUERY ?
    Je dis cela car WOW Slider fonctionne lui.

    Merci.

  3. Jeremie

    Merci Aurélien pour ce tuto qui m’a vraiment aidé.
    J’ai cependant une question:
    Je n’arrive pas à afficher l’image à la une de l’article (thumbnail)
    Je suis allé voir dans le codex, comme tu l’indiques, mais il n’y a rien à ce sujet.
    Si toi ou quelqu’un d’autre pouvait m’aider se serait vraiment sympa…

    Pour infos: J’ai essayé de faire un simple:

    mais cela ne fonctionne pas….

  4. Sampa

    Bonjour !
    Je ne saisis pas la procédure pour faire mon echo dans une page spécifique.
    J’ai donc mis le code dans le fichier page.php et mon echo dans une des pages du site via l’éditeur de WordPress.
    Si je mets l’echo dans le fichier page.php, l’article s’affiche sur toutes les pages du site, évidement. Si je place

    <?php echo "$title$contenu$date« ; ?>

    dans une page « toto », il affiche
    $title

    $contenu

    $date« ; ?>

    Il y a t-il une écriture spécifique pour placer ce code dans la page (toujours via l’éditeur de wordpress) ?
    Ou faut-il mettre le code dans un autre fichier que page.php ?
    Merci !

Laisser un commentaire