我正在使用自举的旋转木马。我将在WordPress中使用它。我正在使用foreach循环查询最近的两个帖子但是为了使轮播正常工作,我需要最新的帖子才能有一个额外的“活跃”课程。我在stackoverflow上找到了一些解决方案,但它们都是whileloops,我真的需要它为这个foreach循环。这是我的代码:
<div id="NewsCarousel" class="carousel slide">
<div class="carousel-inner">
<?php
$args = array( 'numberposts' => '2', 'category' => 5 );
$recent_posts = wp_get_recent_posts( $args );
foreach( $recent_posts as $recent ){
echo '<div class="item"><a href="' . get_permalink($recent["ID"]) . '" title="Look '.esc_attr($recent["post_title"]).'" >' . get_the_post_thumbnail($recent["ID"], array(200,200)) .$recent["post_title"].'</a> </div> ';
}
?>
</div>
</div>
答案 0 :(得分:5)
您可以使用boolean
变量来确定它是否是第一个循环。初始值为true
,一旦循环,该值将设置为false
。
<div id="NewsCarousel" class="carousel slide">
<div class="carousel-inner">
<?php
$args = array( 'numberposts' => '2', 'category' => 5 );
$recent_posts = wp_get_recent_posts( $args );
$isFirst = true;
foreach( $recent_posts as $recent ){
echo '<div class="item' . $isFirst ? ' active' : '' . '"><a href="' . get_permalink($recent["ID"]) . '" title="Look '.esc_attr($recent["post_title"]).'" >' . get_the_post_thumbnail($recent["ID"], array(200,200)) .$recent["post_title"].'</a> </div> ';
$isFirst = false;
}
?>
</div>
</div>
答案 1 :(得分:2)
您可以在foreach循环之外添加类似$count = 0;
的计数器。然后在foreach循环内部告诉它增加$count++;
然后检查计数是否等于1,如下所示:if($count == 1){//do this}
所以在你的情况下,让我们这样做:
<div id="NewsCarousel" class="carousel slide">
<div class="carousel-inner">
<?php
$args = array( 'numberposts' => '2', 'category' => 5 );
$recent_posts = wp_get_recent_posts( $args );
$count = 0;
foreach( $recent_posts as $recent ){
$count++;
echo '<div class="item'; if($count == 1){echo ' active';}"><a href="' . get_permalink($recent["ID"]) . '" title="Look '.esc_attr($recent["post_title"]).'" >' . get_the_post_thumbnail($recent["ID"], array(200,200)) .$recent["post_title"].'</a> </div> ';
}
?>
</div>
</div>
试试吧,它应该可以解决问题。我刚刚在我正在处理的项目上使用了这个方法。