Question

Sur le rail ici: http://www.julianamaeberger.com/soma / échantillon testimoniale-3 / Je montre un poste aléatoire « témoignage ». Ci-dessous que je vous montre toutes les images présentées pour la catégorie « Témoignage » de sorte que vous pouvez feuilleter les images et choisir l'endroit où vous voulez aller.

Je veux souligner l'image qui est lié au contenu ci-dessus, mais ne peut pas comprendre comment le faire. Ceci est la première fois que la construction de modèles, donc je vais peut-être au sujet de la mauvaise façon. Toute aide dans la bonne direction serait très apprécié.

Voici le code pour le rail droit:

<div class="rightcolumn">
   <div class="testimonial">
     <h3>Testimonials</h3>
     <?php
 $postslist = get_posts('category_name=testimonial&numberposts=1&orderby=rand');
 foreach ($postslist as $post) : 
    setup_postdata($post);
 ?>
     <?php the_content(); ?>
     <?php endforeach; ?>
    </div>
    <div class="carousel default"> 
      <div class="jCarouselLite">
        <ul class="portfolio">
          <?php
 $postslist = get_posts('category_name=testimonial&numberposts=-1&order=DES');
 foreach ($postslist as $post) : 
    setup_postdata($post);
 ?>
          <li> 
            <?php the_post_thumbnail( 'nav' ); ?>
          </li>
          <?php endforeach; ?>
        </ul>
      </div>

      <script type="text/javascript">
    $(".default .jCarouselLite").jCarouselLite({
        btnNext: ".default .next",
        btnPrev: ".default .prev",
  visible: 3,
  scroll: 3,
  speed:100
    });   
      </script>
</div>
</div>
Était-ce utile?

La solution

Comment vous voulez mettre en évidence cette image est spécifique à votre mise en page, mais il implique probablement mettre une classe au <li> qui l'entoure? Vous pouvez le faire en comparant l'identifiant du poste que vous avez affiché avec l'ID du poste dont vous montrez la vignette.

Dans votre première boucle vous enregistrer l'identifiant:

$current_testimonial_id = get_the_ID();

Dans votre deuxième boucle vous comparez à la vignette actuelle:

<li <?php if ( get_the_ID() == $current_testimonial_id ) { echo ' class="highlighted"'; } ?>>

Une astuce rapide si vous travaillez avec plusieurs boucles: la plupart des fonctions de modèle accepter des paramètres post ID, de sorte que vous ne devez pas utiliser la fonction setup_postdata() qui définit des variables globales. Ceci est pratique si vous avez besoin de la requête après « principale » à nouveau après votre boucle supplémentaire. Ainsi, le code suivant fonctionne un puits pour la deuxième boucle:

    <ul class="portfolio">
      <?php
 $testimonials = get_posts('category_name=testimonial&numberposts=-1&order=DESC');
 foreach ($testimonials as $testimonial) : 
      ?>
      <li <?php if ( $testimonial->ID == $current_testimonial_id ) { echo ' class="highlighted"'; } ?>> 
        <?php echo get_the_post_thumbnail( $testimonial->ID, 'nav' ); ?>
      </li>
      <?php endforeach; ?>
    </ul>
Licencié sous: CC-BY-SA avec attribution
Non affilié à wordpress.stackexchange
scroll top