我正在尝试将Bootstrap轮播集成到我的Wordpress主题中作为推荐滑块。证词和徽标出现(我使用自定义帖子类型),但唯一没有显示的是轮播指示器。我查看了许多Stackoverflow问题和其他网页,但我找不到解决方案。
有人能够查看我的代码,看看我能做些什么来修复它吗?谢谢你的帮助。
<ol class="carousel-indicators">
<?php
$args = array(
'post_type' => 'testimonial',
'orderby' => 'post_id',
'order' => 'ASC'
);
$loop = new WP_Query( $args );
$banner_count = 0;
while ( $loop->have_post() ) : $loop->the_post();
if ( $banner_count == 0 ){
$active_item = 'active';
}
else {
$active_item = '';
}
?>
<li data-target="#quote-carousel" data-slide-to="<?php echo $banner_count; ?>" class="<?php echo $active_item; ?>"></li>
<?php $banner_count++; endwhile; ?>
</ol>
<!-- Carousel Slides / Quotes -->
<div class="carousel-inner">
<?php
$loop = new WP_Query( $args );
$banner_count = 0;
while ( $loop->have_posts() ) : $loop->the_post();
if ( $banner_count == 0 ){
$active_item = 'active';
}
else {
$active_item = '';
}
?>
<!-- Quote 1 -->
<div class="item <?php echo $active_item; ?>">
<blockquote>
<div class="row">
<div class="col-sm-3 text-center">
<img class="img-circle">
<?php
if ( has_post_thumbnail() ) {
the_post_thumbnail( array( 200, 100 ) );
}
?>
</div>
<div class="col-sm-9">
<?php the_content(); ?>
<small><?php the_title(); ?></small>
</div>
</div>
</blockquote>
</div>
<?php $banner_count++; endwhile; ?>
</div>
答案 0 :(得分:1)
您在s
上错过了have_posts()
指示符。
while ( $loop->have_post() ) : $loop->the_post();
应该是:
while ( $loop->have_posts() ) : $loop->the_post();
我还建议将查询移到顶部并运行一次而不是两次。
<?php
$args = array(
'post_type' => 'testimonial',
'orderby' => 'post_id',
'order' => 'ASC'
);
$loop = new WP_Query( $args );
if ( $loop->have_posts() ) : ?>
<ol class="carousel-indicators">
. . .
WHILE HERE FOR LIST ITEMS
</ol>
<?php $loop->rewind_posts(); // reset the loop and re-use ?>
<div class="carousel-inner">
. . .
WHILE HERE TO LOOP THROUGH ITEMS
. . .
</div>
<?php
endif;