WordPress : Comment obtenir la première image du message précédent

Publié par Jean-Michel le

J’utilise actuellement ce code pour obtenir le lien et la vignette du message précédent et suivant

       <?php $prevPost = get_previous_post(true);
            if($prevPost) {?>
            <div class="nav-box previous" style="float:left;">
            <?php $prevthumbnail = catch_that_image($prevPost->ID, array(100,100) );}?>
            <?php previous_post_link('%link',"$prevthumbnail  %title", TRUE); ?>
            </div>

        <?php $nextPost = get_next_post(true);
            if($nextPost) { ?>
        <div class="nav-box next" style="float:right;">
            <?php $nextthumbnail = catch_that_image($nextPost->ID, array(100,100) ); } ?>
            <?php next_post_link('%link',"$nextthumbnail  %title", TRUE); ?>
            </div>

Mais je veux obtenir la première image du message sous forme de vignette, au lieu de l’image en vedette.

Lire également:  alimenter les messages personnalisés sur le modèle sur wordpress

J’ai trouvé ce code qui récupère la première image du post actuel mais comment puis-je l’utiliser avec le code ci-dessus pour obtenir la première image du post précédent ou du post suivant ?

function catch_that_image() {
global $post, $posts;
$first_img = '';
ob_start();
ob_end_clean();
$output = preg_match_all('/<img.+src=['"]([^'"]+)['"].*>/i', $post->post_content, $matches);
$first_img = $matches [1] [0];
return $first_img;
}

Solution n°1 trouvée

J’ai utilisé ce code pour un type de message personnalisé, cela fonctionnera pour vous en faisant quelques modifications :

<div class="memberNavigation">
  <div class="memberNav">
    <?php // Display the thumbnail of the previous post ?>
    <div class="memberNavPrev">
      <?php
                $prevPost = get_previous_post();
                $prevthumbnail = get_the_post_thumbnail($prevPost->ID);
                $prevtitle = get_the_title($prevPost->ID); ?>
      <p class="navtitle">
        <?php previous_post_link('%link', 'Previous Board Member'); ?>
      </p>
      <?php previous_post_link('%link', $prevthumbnail); ?>
      <h5 class="memberTitle">
        <?php previous_post_link('%link', $prevtitle); ?>
      </h5>
    </div>
    <?php // Display the thumbnail of the next post ?>
    <div class="memberNavNext">
      <?php
                $nextPost = get_next_post();
                $nextthumbnail = get_the_post_thumbnail($nextPost->ID);
                $nexttitle = get_the_title($nextPost->ID); ?>
      <p class="navtitle">
        <?php next_post_link('%link', 'Next Board Member'); ?>
      </p>
      <?php next_post_link('%link', $nextthumbnail); ?>
      <h5 class="memberTitle">
        <?php previous_post_link('%link', $nexttitle); ?>
      </h5>
    </div>
    <div class="clearfix"></div>
  </div>
</div>
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 *