Global 2026-07-28
This commit is contained in:
parent
b445d64757
commit
d190b93d68
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Секция отзывов на главной странице
|
* Секция отзывов на главной странице
|
||||||
* Показывает заголовок + 3 отзыва (отмеченных review_show_on_front) + ссылка на все
|
* Показывает заголовок + 3 отзыва из CF reviews_cards (страница 91 /otzyvy/) + ссылка на все
|
||||||
* Стиль карточек — как на /otzyvy/
|
* Стиль карточек — как на /otzyvy/
|
||||||
*
|
*
|
||||||
* @package Dekart
|
* @package Dekart
|
||||||
@ -13,14 +13,15 @@ if (! defined('ABSPATH')) {
|
|||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
$reviews_query = new WP_Query(array(
|
$reviews_page_id = 91;
|
||||||
'post_type' => 'reviews',
|
$reviews_cards = carbon_get_post_meta($reviews_page_id, 'reviews_cards');
|
||||||
'posts_per_page' => 3,
|
$has_reviews = ! empty($reviews_cards) && is_array($reviews_cards);
|
||||||
'orderby' => 'date',
|
|
||||||
'order' => 'DESC',
|
|
||||||
));
|
|
||||||
|
|
||||||
$has_reviews = $reviews_query->have_posts();
|
// Берём 3 последних (в CF они в обратном порядке, но на всякий случай переворачиваем)
|
||||||
|
if ($has_reviews) {
|
||||||
|
$reviews_cards = array_reverse($reviews_cards);
|
||||||
|
$reviews_cards = array_slice($reviews_cards, 0, 3);
|
||||||
|
}
|
||||||
?>
|
?>
|
||||||
<section class="reviews-front-section reveal" id="reviews" aria-label="Отзывы">
|
<section class="reviews-front-section reveal" id="reviews" aria-label="Отзывы">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
@ -36,29 +37,22 @@ $has_reviews = $reviews_query->have_posts();
|
|||||||
<div class="reviews-front__scroll-hint" aria-hidden="true">👆 Листайте отзывы →</div>
|
<div class="reviews-front__scroll-hint" aria-hidden="true">👆 Листайте отзывы →</div>
|
||||||
<div class="reviews-front__wrap">
|
<div class="reviews-front__wrap">
|
||||||
<div class="reviews-front__grid">
|
<div class="reviews-front__grid">
|
||||||
<?php while ($reviews_query->have_posts()) :
|
<?php foreach ($reviews_cards as $card) :
|
||||||
$reviews_query->the_post();
|
$name = $card['review_author'] ?? '';
|
||||||
$pid = (int) get_the_ID();
|
$stars = (int) ( $card['review_rating'] ?? 5 );
|
||||||
$name = get_the_title();
|
$text = $card['review_text'] ?? '';
|
||||||
$avatar_id = carbon_get_post_meta($pid, 'review_avatar');
|
$rdate_cf = $card['review_date'] ?? '';
|
||||||
$stars = (int) ( carbon_get_post_meta($pid, 'review_star') ?: 5 );
|
$rdate = $rdate_cf ?: '';
|
||||||
$text = carbon_get_post_meta($pid, 'review_text');
|
$teacher = $card['review_teacher'] ?? array();
|
||||||
$rdate_cf = carbon_get_post_meta($pid, 'review_date');
|
|
||||||
$rdate = $rdate_cf ?: get_the_date('d.m.Y');
|
|
||||||
$teacher = carbon_get_post_meta($pid, 'review_teacher');
|
|
||||||
$has_teacher = ! empty($teacher[0]['id']);
|
$has_teacher = ! empty($teacher[0]['id']);
|
||||||
$is_long = mb_strlen($text) >= 350;
|
$photo_url = $card['review_photo'] ?? '';
|
||||||
?>
|
?>
|
||||||
<div class="reviews-front__card">
|
<div class="reviews-front__card">
|
||||||
<div class="reviews-front__card-inner">
|
<div class="reviews-front__card-inner">
|
||||||
<div class="reviews-front__header">
|
<div class="reviews-front__header">
|
||||||
<div class="reviews-front__avatar" style="background-color: <?php echo esc_attr(rand_color()); ?>">
|
<div class="reviews-front__avatar" style="background-color: <?php echo esc_attr(rand_color()); ?>">
|
||||||
<?php if ($avatar_id) : ?>
|
<?php if ($photo_url) : ?>
|
||||||
<?php echo wp_get_attachment_image($avatar_id, array( 57, 57 ), false, array(
|
<img class="reviews-front__avatar-img" src="<?php echo esc_url($photo_url); ?>" alt="" loading="lazy" width="57" height="57">
|
||||||
'class' => 'reviews-front__avatar-img',
|
|
||||||
'loading' => 'lazy',
|
|
||||||
'alt' => '',
|
|
||||||
)); ?>
|
|
||||||
<?php else : ?>
|
<?php else : ?>
|
||||||
<span class="reviews-front__avatar-letter"><?php echo esc_html(mb_substr($name, 0, 1)); ?></span>
|
<span class="reviews-front__avatar-letter"><?php echo esc_html(mb_substr($name, 0, 1)); ?></span>
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
@ -72,7 +66,9 @@ $has_reviews = $reviews_query->have_posts();
|
|||||||
<?php for ($i = 1; $i <= $stars; $i++) : ?>
|
<?php for ($i = 1; $i <= $stars; $i++) : ?>
|
||||||
<svg width="20" height="20" viewBox="0 0 21 19" fill="#FFD43E" aria-hidden="true"><path d="M9.58463 1.50884C9.89101 0.602477 11.1729 0.602476 11.4793 1.50884L13.1158 6.35007C13.2531 6.75637 13.6343 7.02985 14.0631 7.02985H19.2721C20.2504 7.02985 20.6467 8.28958 19.8447 8.84971L15.6995 11.7446C15.335 11.9991 15.1823 12.4636 15.3247 12.8847L16.9239 17.6158C17.233 18.5302 16.1954 19.3085 15.404 18.7559L11.1045 15.7533C10.7606 15.5131 10.3033 15.5131 9.95941 15.7533L5.65991 18.7559C4.86857 19.3085 3.83092 18.5302 4.14001 17.6158L5.73926 12.8847C5.8816 12.4636 5.72891 11.9991 5.36448 11.7446L1.21924 8.84971C0.417196 8.28958 0.813532 7.02985 1.79181 7.02985H7.00081C7.42969 7.02985 7.81081 6.75637 7.94815 6.35007L9.58463 1.50884Z"/></svg>
|
<svg width="20" height="20" viewBox="0 0 21 19" fill="#FFD43E" aria-hidden="true"><path d="M9.58463 1.50884C9.89101 0.602477 11.1729 0.602476 11.4793 1.50884L13.1158 6.35007C13.2531 6.75637 13.6343 7.02985 14.0631 7.02985H19.2721C20.2504 7.02985 20.6467 8.28958 19.8447 8.84971L15.6995 11.7446C15.335 11.9991 15.1823 12.4636 15.3247 12.8847L16.9239 17.6158C17.233 18.5302 16.1954 19.3085 15.404 18.7559L11.1045 15.7533C10.7606 15.5131 10.3033 15.5131 9.95941 15.7533L5.65991 18.7559C4.86857 19.3085 3.83092 18.5302 4.14001 17.6158L5.73926 12.8847C5.8816 12.4636 5.72891 11.9991 5.36448 11.7446L1.21924 8.84971C0.417196 8.28958 0.813532 7.02985 1.79181 7.02985H7.00081C7.42969 7.02985 7.81081 6.75637 7.94815 6.35007L9.58463 1.50884Z"/></svg>
|
||||||
<?php endfor; ?>
|
<?php endfor; ?>
|
||||||
|
<?php if ($rdate) : ?>
|
||||||
<span class="reviews-front__date"><?php echo esc_html($rdate); ?></span>
|
<span class="reviews-front__date"><?php echo esc_html($rdate); ?></span>
|
||||||
|
<?php endif; ?>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<?php if ($has_teacher) : ?>
|
<?php if ($has_teacher) : ?>
|
||||||
@ -92,7 +88,7 @@ $has_reviews = $reviews_query->have_posts();
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<?php endwhile; ?>
|
<?php endforeach; ?>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user