Как вывести встроенный рейтинг в карточках постов?
Чтобы вывести встроенный рейтинг в карточках постов, над заголовком записи, установите и активируйте дочернюю тему https://support.wpshop.ru/docs/themes/bono/child/.
В дочерней теме bono_child создайте папку template-parts, в ней папку post-card. Из темы Bono скопируйте в неё файлы standard.php и vertical.php.
Откройте файлы /template-parts/post-card/standard.php и /template-parts/post-card/vertical.php в дочерней теме и код
if ( $order == 'title' ) {
echo '<div class="post-card__title" itemprop="name">';
echo '<span itemprop="headline">';
echo '<a href="' . get_the_permalink() . '">' . get_the_title() . '</a>';
echo '</span>';
echo '</div>';
}
замените на
if ( $order == 'title' ) {
echo '<div class="post-card__rating">';
$wpshop_rating = theme_container()->get( \Wpshop\Core\StarRating::class );
$post_id = $post ? $post->ID : 0; $wpshop_rating->get_the_rating( $post_id );
echo '</div>';
echo '<div class="post-card__title" itemprop="name">';
echo '<span itemprop="headline">';
echo '<a href="' . get_the_permalink() . '">' . get_the_title() . '</a>';
echo '</span>';
echo '</div>';
}
Затем в файл style.css дочерней темы добавьте следующий код:
/* Вывод встроенного рейтинга в карточках постов */
.post-card__rating {
display: flex;
margin-bottom: .4em;
}
.post-card__rating .star-rating-text {
font-size: .9em;
padding-top: 2px;
}
.post-card__rating .wp-star-rating {
margin-left: .5em;
}
.post-card__rating .wp-star-rating .star-rating-item {
cursor: unset;
}
.post-card__rating .wp-star-rating .star-rating-item svg {
font-size: 1em;
}
Вам помог ответ?