我正在Wordpress中开发新闻网站,我需要在引导轮播中展示前三个帖子,但我的问题是我只需要在这三个元素中的第一个添加“活动”类,但实际上不需要不知道该怎么做.这是我的代码:
<?php
$args = array('numberposts' => '3');
$recent_posts = wp_get_recent_posts($args);
foreach ($recent_posts as $recent) {
echo '<div class="item active"><a href="' . get_permalink($recent["ID"]) . '" title=" ' . esc_attr($recent["post_title"]) . '" >' .$recent["post_date"] . ': <strong>' .$recent["post_title"] . '</strong></a></div>';
}
?>
我已经尝试过在此站点(此站点)上找到的答案:
$isFirst = true;
foreach ($recent_posts as $recent) {
echo '<div class="item' . $isFirst ? ' active' : '' . '"><a href="' . get_permalink($recent["ID"]) . '" title=" ' . esc_attr($recent["post_title"]) . '" >' .$recent["post_date"] . ": <strong>" .$recent["post_title"] . '</strong></a></div>';
$isFirst = false;
?>
但它只是印出了“积极”的字眼.
谢谢你的帮助
解决方法:
您需要设置$i,以便可以计算循环次数并对其进行逻辑处理,如下面的示例所示.而不是像我下面所做的那样,几乎没有两行代码是完全相同的,而是应该能够在活动类周围执行if条件.我没有这样做,因此您可以清楚地看到遍历数组的条件和循环数.
<?php
$args = array('numberposts' => '3');
$recent_posts = wp_get_recent_posts($args);
$i = 0;
foreach ($recent_posts as $recent) {
if ($i == 0) {
echo '<div class="item active"><a href="' . get_permalink($recent["ID"]) . '" title=" ' . esc_attr($recent["post_title"]) . '" >' .$recent["post_date"] . ': <strong>' .$recent["post_title"] . '</strong></a></div>';
} else {
echo '<div class="item"><a href="' . get_permalink($recent["ID"]) . '" title=" ' . esc_attr($recent["post_title"]) . '" >' .$recent["post_date"] . ': <strong>' .$recent["post_title"] . '</strong></a></div>';
}
$i++;
}
?>