Insom84
@Insom84

Подсчет комментариев с оценкой меньше 2,5?

Есть сайт на WP. В файле function.php есть код который считает рейтинг поста из комментариев и выводит среднее значение:
Вопрос: как его можно переписать так, чтобы он считал не среднее значение всех оценок, а кол-во комментариев с оценкой меньше 2,5 ?
//ПОДСЧЕТ ОБЩЕЙ ОЦЕНКИ.
function comm_rating_get_average_ratings( $id ) {
    $comments = get_approved_comments( $id );
    if ( $comments ) {
        $i = 0;
        $total = 0;
        foreach( $comments as $comment ){
            $rate = get_comment_meta( $comment->comment_ID, 'rating', true );
            if( isset( $rate ) && '' !== $rate ) {
                $i++;
                $total += $rate;
            }
        }
 
        if ( 0 === $i ) {
            return false;
        } else {
            return round( $total / $i, 1 );
        }
    } else {
        return false;
    }
}
  • Вопрос задан
  • 56 просмотров
Решения вопроса 1
@Asokr
Примерно так - нужно посмотреть, как в rate оценка храниться
//ПОДСЧЕТ ОБЩЕЙ ОЦЕНКИ.
function comm_rating_get_average_ratings( $id ) {
    $comments = get_approved_comments( $id );
    if ( $comments ) {
        $i = 0;
        $total = 0;
        foreach( $comments as $comment ){
            $rate = get_comment_meta( $comment->comment_ID, 'rating', true );
            if( isset( $rate ) && '' !== $rate && $rate < 2.5 ) {
                $i++;
            }
        }
 
        if ( 0 === $i ) {
            return false;
        } else {
            return $i;
        }
    } else {
        return false;
    }
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы