Pregunta

En el carril aquí: http://www.julianamaeberger.com/soma / muestra-testimonio-3 / estoy mostrando un puesto al azar "testimonial". Debajo de eso estoy mostrando todas las imágenes destacadas del rubro "testimonial" de manera que se puede voltear a través de las imágenes y elegir dónde desea ir a continuación.

Quiero resaltar la imagen que se relaciona con el contenido de arriba, pero no puede encontrar la manera de hacerlo. Esta es la primera vez que las plantillas de la construcción, por lo que puede estar pasando sobre él por el camino equivocado. Cualquier ayuda en la dirección correcta sería muy apreciada.

Este es el código para el carril derecho:

<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>
¿Fue útil?

Solución

¿Cómo desea resaltar esta imagen es específica para su diseño, pero es probable que implica la creación de una clase a la <li> que lo rodea? Usted puede hacer esto mediante la comparación de la identificación del puesto que ha mostrado con el ID del puesto de que se está mostrando en la miniatura.

En el primer bucle que guardar el ID:

$current_testimonial_id = get_the_ID();

En el segundo bucle se compara con la miniatura actual:

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

Un consejo rápido si se está trabajando con múltiples bucles: la mayoría de las funciones de plantilla aceptar parámetros Identificación de la publicación, por lo que no tiene que utilizar la función setup_postdata() que establece algunas variables globales. Esto es útil si necesita la consulta "principal" puesto de nuevo después de su bucle adicional. Por lo que el siguiente código funciona igual de bien para un segundo bucle:

    <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>
Licenciado bajo: CC-BY-SA con atribución
scroll top