Files

195 lines
16 KiB
PHP
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
/**
* Заглавный блок с ACF полями
*/
$id = 'hero-' . $block['id'];
if (!empty($block['anchor'])) {
$id = $block['anchor'];
}
$className = 'hero-block';
if (!empty($block['className'])) {
$className .= ' ' . $block['className'];
}
if (!empty($block['align'])) {
$className .= ' align' . $block['align'];
}
$slider_data = get_field('slider') ?: [];
$text_data = get_field('text') ?: [];
$heading = $text_data['heading'] ?? '';
$heading_text = $text_data['heading_text'] ?? '';
$address = $text_data['adress'] ?? '';
$address_extra = $text_data['adress_extra'] ?? '';
$slides = [];
if (!empty($slider_data) && is_array($slider_data)) {
foreach ($slider_data as $index => $slide) {
$image_url = '';
if (!empty($slide['image']) && is_array($slide['image'])) {
$image_url = $slide['image']['url'] ?? '';
}
$slides[] = [
'number' => sprintf('%02d', $index + 1),
'title' => $slide['text'] ?? '',
'img' => $image_url
];
}
}
$room = get_current_room();
if ($room === 'fitness') {
$section_classes = 'radient-bg';
$style_attr = '';
} else {
$section_classes = 'bg-cover bg-center bg-no-repeat';
$bg_image = 'data:image/webp;base64,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';
$style_attr = 'style="background-image: url(' . esc_attr($bg_image) . ')"';
}
?>
<section
class="pt-[161px] max-[768px]:pt-[141px] dark:text-[#f8f8f8] hero-block pb-[30px] <?php echo esc_attr($section_classes); ?>" <?php echo $style_attr; ?>>
<div class="container mx-auto mt-[14px]">
<div class="max-[1200px]:flex-col max-[1200px]:items-center flex justify-between gap-[24px] ">
<div class="max-[768px]:mt-[14px] flex flex-col w-full mt-[26px]">
<?php display_icon(get_current_room() === 'gym' ? 'dark_logo_name' : 'light_logo_name'); ?>
<h1 class=" font-[500] leading-[110%] max-[1330px]:text-[36px] max-[768px]:text-[24px] text-[48px] mt-[20px]">
<?php if (!empty($heading)): ?>
<?php echo wp_kses_post($heading); ?>
<?php endif; ?>
</h1>
<p class="max-[768px]:text-[16px] max-[768px]:mt-[16px] text-[24px] font-[500] mt-[20px]">
<?php echo !empty($heading_text) ? esc_html($heading_text) : 'Зал для тех, кто ценит комфорт и сервис'; ?>
</p>
<div class="max-[768px]:mt-[24px] max-[768px]:flex-col flex gap-[12px] mt-[40px]">
<button class="group transition [&>_img]:transition [&>_img]:group-hover:rotate-[45deg] max-[768px]:h-[61px] max-[768px]:max-w-[327px] !no-underline text-[#f8f8f8] text-[18px] font-[600] justify-center h-[75px] w-full max-w-[281px] rounded-[90px] flex items-center gap-[12px] red-gradient-hover cursor-pointer border-none outline-none"
type="button"
data-scroll-to="trial-training">
Пробная тренировка
<?php display_icon('button_arrow_up') ?>
</button>
<button class="max-[768px]:h-[61px] max-[768px]:max-w-[327px] !no-underline text-[#f8f8f8] text-[18px] font-[600] justify-center h-[75px] w-full max-w-[210px] rounded-[90px] flex items-center gap-[12px] grey-gradient-hover cursor-pointer border-none outline-none"
type="button"
data-scroll-to="prices">
Смотреть цены
</button>
</div>
<div class="max-[768px]:[&>_img]:w-[20px] max-[768px]:[&>_img]:h-[20px] max-[768px]:mt-[24px] flex items-center gap-[12px] mt-[50px]">
<?php display_icon('location') ?>
<div class="max-[768px]:text-[14px]">
<p>
<b><?php echo !empty($address) ? esc_html($address) : 'Красноармейская, 120 — 2ой этаж'; ?></b>
</p>
<p class="dark:text-[#6c6b6b]">
<?php echo !empty($address_extra) ? esc_html($address_extra) : 'Главный вход со стороны ул. Косарева'; ?>
</p>
</div>
</div>
</div>
<div class="max-[768px]:h-[290px] max-[768px]:max-w-full w-full max-w-[648px] h-[575px] relative">
<div class="max-[768px]:rounded-[16px] max-[768px]:w-auto swiper inverted-radius rounded-[25px] w-full h-full">
<div class="swiper-wrapper">
<?php foreach ($slides as $index => $slide): ?>
<div class="swiper-slide [&>_img]:max-w-none">
<?php if (!empty($slide['img'])): ?>
<img class="max-[768px]:w-full max-[768px]:h-full object-cover" loading="lazy"
src="<?php echo esc_url($slide['img']); ?>"
alt="<?php echo esc_attr($slide['title']); ?>">
<?php endif; ?>
</div>
<?php endforeach; ?>
</div>
</div>
<div class="max-[768px]:bottom-[8px] max-[768px]:left-[8px] absolute z-[1] rounded-[25px] rounded-bl-none rounded-br-none rounded-tl-none flex items-center gap-[4px] left-0 bottom-0">
<button class="group custom-prev cursor-pointer">
<?php display_icon('slider-prev') ?>
</button>
<button class="group custom-next cursor-pointer">
<?php display_icon('slider-next') ?>
</button>
</div>
</div>
</div>
<div class="max-[768px]:hidden flex gap-[24px] mt-[44px]">
<?php foreach ($slides as $index => $slide): ?>
<div class="!max-h-[21px] pagination-item flex-1 cursor-pointer transition-all"
data-active="<?php echo $index === 0 ? 'true' : 'false' ?>"
data-slide="<?php echo $index ?>">
<div class="pagination-line h-[2px] rounded-[30px] transition-colors"></div>
<div class="slide-text opacity-0 mt-[10px] text-[14px] text-[#222] font-[600] transition-opacity">
<div class="w-fit dark:bg-gradient-to-r dark:from-[rgba(248,248,248,0.55)] dark:to-white dark:bg-clip-text dark:text-transparent">
<span class="slide-number"><?php echo esc_html($slide['number']); ?>.</span>
<span class="slide-title"><?php echo esc_html($slide['title']); ?></span>
</div>
</div>
</div>
<?php endforeach; ?>
</div>
</div>
</section>
<?php if (is_admin()): ?>
<script>
function initAdminSwiper() {
const selectors = [
'#hero-<?php echo $block['id']; ?> .swiper',
'[data-block="<?php echo $block['id']; ?>"] .swiper',
'.hero-block[data-slides] .swiper',
'.swiper'
];
let swiperContainer = null;
for (let selector of selectors) {
swiperContainer = document.querySelector(selector);
if (swiperContainer) break;
}
try {
const swiper = new Swiper(swiperContainer, {
slidesPerView: 1,
loop: true,
autoplay: {
delay: 4000,
disableOnInteraction: false,
},
navigation: {
nextEl: '.custom-next',
prevEl: '.custom-prev',
}
});
} catch (error) {
}
}
if (typeof wp !== 'undefined' && wp.domReady) {
wp.domReady(function () {
setTimeout(initAdminSwiper, 300);
});
}
</script>
<?php endif; ?>