WordPress : Image en vedette de la page des messages

Publié par Jean-Michel le

J’ai créé un thème qui utilise une image en vedette sur chaque page.

Dans les paramètres, j’ai configuré ma « page de messages » pour qu’elle soit « actualités »… comment puis-je afficher l’image en vedette de « actualités » ?

Ce qui suit affichera l’identifiant de ma page de messages :

<?php
    $page_for_posts = get_option( 'page_for_posts' );
    echo $page_for_posts;
?>

Je pensais donc que cela afficherait l’image en vedette pour ma page de messages :

<?php
    $page_for_posts = get_option( 'page_for_posts' );
    echo get_the_post_thumbnail($page_for_posts, 'large');
?>

Mais, d’une manière ou d’une autre, ce n’est pas le cas 🙁 Dois-je ajouter ce code dans la boucle ou quelque chose comme ça ?

Des idées?

Merci Josh

Solution n°1 trouvée

Vous pouvez toujours faire cela à la place;

$id = get_the_ID();
echo get_the_post_thumbnail($id, 'large');

get_the_ID()obtient l’ID de la publication/page actuelle sur laquelle vous vous trouvez, puis vous le transmettez à votre get_the_post_thumbnailfonction.

Cela vous évite d’avoir à utiliser un get_optionpour récupérer un champ de la table d’options.

Solution n°2 trouvée

J’ai l’impression d’être un idiot !! J’étais en train de résoudre ce problème hier soir et je suppose que j’ai supprimé l’image en vedette pour la page d’actualités… donc, bien sûr, l’image ne s’affichait pas !

J’ai ajouté l’image sélectionnée et le code suivant :

<?php if(is_home()) { ?>
    <?php
        $page_for_posts = get_option( 'page_for_posts' );
        echo get_the_post_thumbnail($page_for_posts, 'large');
    ?>
<?php } ?>

Maintenant, tout fonctionne comme prévu (Remarque : message croisé et problème résolu dans les forums de support de wordpress.org.)

Catégories : Wordpress

Jean-Michel

Jean-Michel est en charge de la partie blog du site. Il met en place la stratégie de contenu et répond aux questions fréquentes sur Wordpress.

0 commentaire

Laisser un commentaire

Avatar placeholder

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