I’m using the carousel that comes with bootstrap. This I’ll be using in WordPress. I’m querying two recent posts with a foreach loop but for the carousel to work correctly I need the newest post to have an extra ‘active’ class. I found some solutions here on stackoverflow but it were all whileloops, I really need it for this foreach loop. This is my code:
<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>
You can add a counter like so
$count = 0;
outside of the foreach loop. And then inside the foreach loop you tell it to increment like so$count++;
You then check if the count is equal to 1 like this:
if($count == 1){//do this}
So in your case lets do it like this:
Try that, it should do the trick. I just used this method on a project of which I’m dealing with currently.
You can use a
boolean
variable to determine if it is a first loop or not. Initial value istrue
, once it loops, the value is set tofalse
.