根据我从管理员Wordpress得到的数字显示星号

时间:2018-06-25 12:28:35

标签: php wordpress advanced-custom-fields

我想根据我从ACF字段的管理员那里得到的数字显示星星,这是我现在的代码。

<?php if( have_rows('testimonials_reviews_section') ):
            while ( have_rows('testimonials_reviews_section') ) : the_row(); ?>
            <!-- Slides -->
            <div class="swiper-slide">
                <div class="testimonials--reviews-review">
                    <div class="testimonials--review-stars">
                        <span class="star filled">★</span>
                        <span class="star filled">★</span>
                        <span class="star filled">★</span>
                        <span class="star filled">★</span>
                        <span class="star filled">★</span>
                    </div>
                    <?php the_sub_field('stars'); ?>
                    <p class="testimonials--review-text"><?php the_sub_field('text'); ?></p>
                    <span class="testimonials--review-author"><?php the_sub_field('author'); ?></span>
                </div>
            </div>
            <?php endwhile;
        endif; ?>

我在这里有一个中继器,我将从sub_field('stars')获得数字3,例如,我需要显示所有5星,但是只有“ filled”类可以显示3星。

1 个答案:

答案 0 :(得分:0)

我认为我是第一次误读这个问题。您应该动态创建星星,如果星星少于星星,则应用该类。

$count = 3; //the_sub_field('stars');
for($i = 1; $i < 6; $i++) {
    $class = $i <= $count ? ' filled' : '';
?>
    <span class="star<?php echo $class;?>">★</span>
<?php
}

https://3v4l.org/5M3lA