youmixx
@youmixx
PHP Developer

WooCommerce как сделать автообновление без кнопки?

В WooCommerce в корзине можно изменять кол-во товаров, мне нужно сделать тоже самое, но в модальном окне при добавление.

Я что-то собрал из того, что взял в корзине, получилось следующие.
<form class="woocommerce-cart-form" action="<?php echo esc_url(wc_get_cart_url()); ?>" method="post">
				<div class="shop_table_responsive cart woocommerce-cart-form__contents">
	            <?php
	            foreach (WC()->cart->get_cart() as $cart_item_key => $cart_item) {
	            	if($cart_item['data']->get_id() == $product->id)
	            	{
		                $_product = apply_filters('woocommerce_cart_item_product', $cart_item['data'], $cart_item, $cart_item_key); ?>
					<div class="row cart_product_row woocommerce-cart-form__cart-item <?php echo esc_attr(apply_filters('woocommerce_cart_item_class', 'cart_item', $cart_item, $cart_item_key)); ?>">
	                    <div class="product-quantity" data-title="<?php esc_attr_e('Quantity', 'woocommerce'); ?>">
	                        <?php
	                        if ($_product->is_sold_individually()) {
	                            $product_quantity = sprintf('1 <input type="hidden" name="cart[%s][qty]" value="1" />', $cart_item_key);
	                        } else {
	                            echo '<div class = "on_small" style="font-size: 14px; color: #b0b0b0;  margin-bottom: 10px; font-weight: 400;">Количество</div >';
	                            $product_quantity = woocommerce_quantity_input(
	                                    array(
	                                        'input_name' => "cart[{$cart_item_key}][qty]",
	                                        'input_value' => $cart_item['quantity'],
	                                        'max_value' => $_product->get_max_purchase_quantity(),
	                                        'min_value' => '0',
	                                        'product_name' => $_product->get_name(),
	                                    ),
	                                    $_product,
	                                    false
	                            );
	                        }
	                        echo apply_filters('woocommerce_cart_item_quantity', $product_quantity, $cart_item_key, $cart_item); // PHPCS: XSS ok.
                    }
                }
                ?>	
                		</div>
                    </div>
		            <div class="row cart_product_row coupon_row">
		                <div class="col-12">
		                    <button type="submit" class="button green_btn mt-5" name="update_cart" value="<?php esc_attr_e('Update cart', 'woocommerce'); ?>"><?php esc_html_e('Update cart', 'woocommerce'); ?></button>
		                    <?php wp_nonce_field('woocommerce-cart', 'woocommerce-cart-nonce'); ?>
		                </div>
		            </div>
                </div>
	            </form>


Вот только проблема в следующем.
В корзине, когда мы написали какую-то цифру (сколько товаров выбираем), он сам отправляет запрос и обновляет. А у меня запрос сам не отправляется, только если вручную нажать на кнопку "обновить".

В корзине кнопка скрыта, но она как-та сама нажимается. Если её удалить, ничего происходить не будет.
5ef710ad74a2a255381792.png

У меня эта кнопка автоматически не пропадает, на неё нужно нажимать.
5ef710fe1bc35561200750.png
  • Вопрос задан
  • 138 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы