This commit is contained in:
2026-04-19 16:50:40 +03:00
parent ab788c762c
commit c19df05b57
8 changed files with 231 additions and 487 deletions

View File

@@ -50,6 +50,8 @@ function twentytwentyfour_test1_catalog_markup() {
if ( '' === $volume ) {
$volume = __( 'Товар', 'twentytwentyfour' );
}
$add_to_cart_url = $product->add_to_cart_url();
$add_to_cart_text = $product->add_to_cart_text();
?>
<article class="catalog-card reveal<?php echo esc_attr( $delay_class ); ?>">
<?php if ( $image_html ) : ?>
@@ -66,14 +68,18 @@ function twentytwentyfour_test1_catalog_markup() {
<?php endif; ?>
</div>
<div class="card-price"><strong><?php echo esc_html( $price ); ?></strong></div>
<button
class="mini-button add-to-cart"
data-product-id="<?php echo esc_attr( (string) $product->get_id() ); ?>"
data-name="<?php echo esc_attr( $product->get_name() ); ?>"
data-volume="<?php echo esc_attr( $volume ); ?>"
data-price="<?php echo esc_attr( (string) wc_get_price_to_display( $product ) ); ?>"
type="button"
><?php esc_html_e( 'Добавить в корзину', 'twentytwentyfour' ); ?></button>
<?php if ( $product->is_purchasable() && $product->is_in_stock() ) : ?>
<a
class="mini-button add_to_cart_button product_type_<?php echo esc_attr( $product->get_type() ); ?>"
href="<?php echo esc_url( $add_to_cart_url ); ?>"
data-product_id="<?php echo esc_attr( (string) $product->get_id() ); ?>"
data-quantity="1"
rel="nofollow"
aria-label="<?php echo esc_attr( sprintf( __( 'Добавить в корзину: %s', 'twentytwentyfour' ), $product->get_name() ) ); ?>"
><?php echo esc_html( $add_to_cart_text ); ?></a>
<?php else : ?>
<a class="mini-button" href="<?php echo esc_url( get_permalink( $product->get_id() ) ); ?>"><?php esc_html_e( 'Подробнее', 'twentytwentyfour' ); ?></a>
<?php endif; ?>
</article>
<?php endforeach; ?>
</div>
@@ -183,7 +189,7 @@ get_header( 'test1' );
<span class="chip">для кулера</span>
</div>
<div class="card-price"><strong>290 ₽</strong><span>за бутыль</span></div>
<button class="mini-button add-to-cart" data-name="Вода артезианская 19 л" data-volume="19 л" data-price="290">Добавить в корзину</button>
<a class="mini-button" href="<?php echo esc_url( home_url( '/shop/' ) ); ?>">В каталог</a>
</article>
<article class="catalog-card reveal reveal-delay-1">
@@ -195,7 +201,7 @@ get_header( 'test1' );
<span class="chip">компактно</span>
</div>
<div class="card-price"><strong>95 ₽</strong><span>за бутылку</span></div>
<button class="mini-button add-to-cart" data-name="Питьевая вода 5 л" data-volume="5 л" data-price="95">Добавить в корзину</button>
<a class="mini-button" href="<?php echo esc_url( home_url( '/shop/' ) ); ?>">В каталог</a>
</article>
<article class="catalog-card reveal reveal-delay-2">
@@ -207,7 +213,7 @@ get_header( 'test1' );
<span class="chip">мероприятия</span>
</div>
<div class="card-price"><strong>39 ₽</strong><span>от 0.5 л</span></div>
<button class="mini-button add-to-cart" data-name="Питьевая вода 1.5 л" data-volume="1.5 л" data-price="49">Добавить в корзину</button>
<a class="mini-button" href="<?php echo esc_url( home_url( '/shop/' ) ); ?>">В каталог</a>
</article>
<article class="catalog-card reveal reveal-delay-3">
@@ -219,7 +225,7 @@ get_header( 'test1' );
<span class="chip">рестораны</span>
</div>
<div class="card-price"><strong>68 ₽</strong><span>за 1.5 л</span></div>
<button class="mini-button add-to-cart" data-name="Минеральная вода 1.5 л" data-volume="1.5 л" data-price="68">Добавить в корзину</button>
<a class="mini-button" href="<?php echo esc_url( home_url( '/shop/' ) ); ?>">В каталог</a>
</article>
<article class="catalog-card reveal reveal-delay-4">
@@ -231,7 +237,7 @@ get_header( 'test1' );
<span class="chip">на выбор</span>
</div>
<div class="card-price"><strong>45 ₽</strong><span>за 0.5 л</span></div>
<button class="mini-button add-to-cart" data-name="Газированная вода 0.5 л" data-volume="0.5 л" data-price="45">Добавить в корзину</button>
<a class="mini-button" href="<?php echo esc_url( home_url( '/shop/' ) ); ?>">В каталог</a>
</article>
</div>
<?php
@@ -263,7 +269,7 @@ get_header( 'test1' );
<span>19 л, мягкий вкус, ежедневное потребление</span>
</div>
<div class="price">290 ₽</div>
<button class="mini-button add-to-cart" data-name="АкваЛиния Классик" data-volume="19 л" data-price="290">Заказать</button>
<a class="mini-button" href="<?php echo esc_url( home_url( '/shop/' ) ); ?>">В каталог</a>
</div>
<div class="product-row">
<div>
@@ -271,7 +277,7 @@ get_header( 'test1' );
<span>19 л, артезианская вода, усиленный контроль</span>
</div>
<div class="price">340 ₽</div>
<button class="mini-button add-to-cart" data-name="АкваЛиния Премиум" data-volume="19 л" data-price="340">Заказать</button>
<a class="mini-button" href="<?php echo esc_url( home_url( '/shop/' ) ); ?>">В каталог</a>
</div>
<div class="product-row">
<div>
@@ -279,7 +285,7 @@ get_header( 'test1' );
<span>2 бутыли 19 л + помпа для первого заказа</span>
</div>
<div class="price">690 ₽</div>
<button class="mini-button add-to-cart" data-name="Стартовый комплект 19 л + помпа" data-volume="2 x 19 л" data-price="690">Заказать</button>
<a class="mini-button" href="<?php echo esc_url( home_url( '/shop/' ) ); ?>">В каталог</a>
</div>
</div>
</div>
@@ -687,32 +693,6 @@ get_header( 'test1' );
</section>
</main>
<div class="cart-drawer" id="cartDrawer" aria-hidden="true">
<div class="cart-panel" role="dialog" aria-modal="true" aria-labelledby="cartTitle">
<div class="drawer-head">
<div>
<h3 id="cartTitle">Корзина</h3>
<p class="dialog-copy">Проверьте состав заказа и переходите к оформлению.</p>
</div>
<button class="close-button" id="cartCloseButton" aria-label="Закрыть корзину">×</button>
</div>
<div class="cart-summary">
<div class="summary-row"><span>Товаров</span><span id="cartItemsCount" aria-live="polite" aria-atomic="true">0</span></div>
<div class="summary-row"><span>Сумма</span><strong id="cartTotal" aria-live="polite" aria-atomic="true">0 ₽</strong></div>
</div>
<div class="cart-list" id="cartList">
<div class="empty-state">Корзина пока пуста. Добавьте нужные позиции из каталога и переходите к оформлению.</div>
</div>
<div class="cart-actions">
<button class="ghost-button" id="viewCartButton">Смотреть корзину</button>
<button class="button" id="checkoutButton">Оформить заказ</button>
</div>
</div>
</div>
<div class="modal-backdrop" id="orderModal" aria-hidden="true">
<div class="modal-card" role="dialog" aria-modal="true" aria-labelledby="orderModalTitle">
<div class="modal-head">