如何将特色图片显示为当前图片?

时间:2010-12-12 作者:juliana_mae

在此处的右侧栏杆上:http://www.julianamaeberger.com/soma/sample-testimonial-3/ 我正在展示一篇随机发布的“推荐信”。下面我展示了“推荐”类别的所有特色图片,以便您可以翻阅这些图片并选择下一步要去的地方。

我想突出显示与上述内容相关的图像,但不知道如何做。这是我第一次构建模板,所以我可能走错了方向。如果能在正确的方向上提供帮助,我们将不胜感激。

以下是右侧扶手的代码:

<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>

1 个回复
最合适的回答,由SO网友:Jan Fabry 整理而成

如何突出显示此图像是特定于布局的,但可能需要将类设置为<li> 围绕着它?您可以通过将显示的帖子ID与显示缩略图的帖子ID进行比较来实现这一点。

在第一个循环中,保存ID:

$current_testimonial_id = get_the_ID();
在第二个循环中,将其与当前缩略图进行比较:

<li <?php if ( get_the_ID() == $current_testimonial_id ) { echo \' class="highlighted"\'; } ?>>
如果您使用多个循环,请提供一个快速提示:大多数模板函数都接受post ID参数,因此您不必使用setup_postdata() 设置一些全局变量的函数。如果在额外循环之后需要再次进行“main”post查询,这将非常方便。因此,以下代码对于第二个循环非常有效:

    <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>

结束

相关推荐