Изменение цвета фона, если функция возвращает число от 0 до 6

У меня есть функция PHP, отображаемая на веб-сайте:

<div class="metacontent"><div><span> <?php the_field('metascore'); ?> </span></div> </div>

Это возвращает metőzy фильма, определенного плагином в wordpress, где авторы могут просто ввести счет, как они редактируют сообщение.

Теперь я хочу, чтобы стиль результатов с различными цветами фона, в зависимости от того, какой счет фильм получает:

.metacontentG {
    position: relative;
    width: 52px;
    height: 52px;
    background-color: #6c3;
}

.metacontentY {
    position: relative;
    width: 52px;
    height: 52px;
    background-color: #fc3;
}

.metacontentR {
    position: relative;
    width: 52px;
    height: 52px;
    background-color: #f00;
}

Другими словами, Я хочу использовать .metacontentG, если оценка выше 6 (функция the_field (‘metć») возвращает значение выше 6). Я хочу использовать .metacontentY если счет между 4 и 6. Я хочу использовать .метаконцентр, если счет ниже 4.

Как я буду решать эту проблему?

4 ответа

  1. Обновите функциюthe_field, чтобы вернуть array(score => 6, class =>metacontentR)или что-то похожее, а затем в html вы можете использовать строку в качестве класса

    <div class="<?php the_field('metascore')['class'] ?>"><div><span> <?php the_field('metascore')['score']; ?> </span></div> </div>
    
  2. Сначала сделайте оператор if, чтобы определить, в какую категорию он попадает:

    $score = get_field('metascore'); 
    
    if($score < 4) {    
      $class = "R";
    } elseif($score < 6) {
      $class = "Y";
    } else {
      $class = "G";
    }
    

    Тогда эхо это, как это:

    <div class="metacontent<?php echo $class; ?>"><div><span> <?php echo $score; ?> </span></div> </div>
    
  3. Вы Можете Использовать Как:-

    <?php
    $response = the_field('metascore')
    ?>
    <div class="<?php if($response==1) { echo "metacontentG"; } if($response==2) { echo "metacontentC"; } ?>"><div><span> <?php the_field('metascore'); ?> </span></div> 
    

    Вы также можете попробовать с случае переключателя

  4. $mscore = get_field('metascore'); 
    $className = "G";
    if($mscore !="")
    {
        if($mscore > 4 && $mscore < 6) {    
            $className = "Y";
        } elseif($mscore > 6) {
            $className = "G";
        } elseif($mscore < 4) {
            $className= "R";
        }
    }
    
    <div class="<?php print $className;?>" ><div><span> <?php the_field('metascore'); ?> </span></div> </div>