• Никакой политики на форуме. Иначе - бан!
  • Вопрос без рабочей ссылки на проблему считается риторическим. Без ссылки и скриншота - провокацией!
  • Темы озаглавленные с маленькой буквы или капсом удаляются без предупреждения!

Решено Отображение рейтинга товара в каталоге

igor.gayyar

Опытный
Добрый день!
Подскажите, как сделать, чтобы в каталоге магазина всегда отображался рейтинг товара.
оценки есть - звезды отображаются закрашены, как и положено,
оценки нет - отображаются звезды без заливки,
т.е. мне нужно, чтобы рейтинг не был скрытым ни при каком случае...
 

artemkomarov

Специалист
Местный
Вот так
PHP:
// add empty stars after title
add_action( 'woocommerce_after_shop_loop_item_title', 'empty_stars', 5 );
function empty_stars() {
    global $product;
    if ( get_option( 'woocommerce_enable_review_rating' ) === 'no' || $product->post->comment_status === 'closed' ) {
        return;
    }
    else {
        $rating_count = $product->get_rating_count();
        $review_count = $product->get_review_count();
        $average      = $product->get_average_rating();

        if ( $rating_count === 0 ) : ?>
            <div class="woocommerce-product-rating" itemprop="aggregateRating" itemscope itemtype="http://schema.org/AggregateRating">
                <div class="star-rating" title="<?php printf( __( 'Rated %s out of 5', 'woocommerce' ), $average ); ?>">
                    <span style="width:<?php echo ( ( $average / 5 ) * 100 ); ?>%">
                        <strong itemprop="ratingValue" class="rating"><?php echo esc_html( $average ); ?></strong> <?php printf( __( 'out of %s5%s', 'woocommerce' ), '<span itemprop="bestRating">', '</span>' ); ?>
                        <?php printf( _n( 'based on %s customer rating', 'based on %s customer ratings', $rating_count, 'woocommerce' ), '<span itemprop="ratingCount" class="rating">' . $rating_count . '</span>' ); ?>
                    </span>
                </div>
                <?php if ( comments_open() ) : ?><a href="#reviews" class="woocommerce-review-link" rel="nofollow"> <?php esc_html_e( 'There are no reviews yet', 'woocommerce' ); ?></a><?php endif ?>
            </div>
        <?php endif;
    }
}
 

MySuck

Новичок
Скорее всего вопрос тупой, но куда этот код вставить то надо?)
В yourtheme/woocommerce/single-product/rating.php?
 
Последнее редактирование:
Сверху Снизу