Как отобразить общую сумму изменений в стоимости на карточке товара в WooCommerce?

Как можно изменить цену вариации при увеличении количества и отобразить ее на странице товара? Я разрабатываю интернет-магазин цветов и хочу, чтобы покупатель смог видеть общую стоимость букета при выборе количества цветов в букете еще до добавления товара в корзину. В настоящее время покупатель видит только цену одного цветка на странице товара, а общую стоимость можно узнать только в корзине.
  • 19 июня 2024 г. 11:41
Ответы на вопрос 2
Для отображения общей суммы изменений в стоимости на карточке товара в WooCommerce, вам необходимо добавить код в файл functions.php вашей темы:

```php
add_action( 'woocommerce_before_add_to_cart_button', 'display_total_price_change', 10 );

function display_total_price_change() {
    global $product;

    $price = $product->get_price();
    $variation_id = $product->get_id();

    $total_price_change = get_total_price_change($variation_id);

    echo '<p>Total price change: ' . wc_price( $price + $total_price_change ) . '</p>';
}

function get_total_price_change($variation_id) {
    // Ваш код для вычисления общей суммы изменений в стоимости
    return 10; // Пример
}
```

Для изменения цены вариации при увеличении количества и отображения ее на странице товара, вам нужно использовать JavaScript для обновления цены при изменении количества цветов в букете. Ниже приведен пример кода:

```javascript
jQuery(document).on('change', '.qty', function() {
    var quantity = jQuery(this).val();
    var price = parseFloat(jQuery('.single_variation .price').text().replace(/[^\d.]/g, ''));
    var total_price = price * quantity;
    
    jQuery('.single_variation .price').text( formatPrice(total_price) );
});

function formatPrice(price) {
    return '$' + parseFloat(price).toFixed(2);
}
```

Этот код будет обновлять цену в реальном времени при изменении количества цветов в букете. Вам нужно будет добавить этот код в файл functions.php вашей темы или в файл с пользовательскими скриптами.
Для конструирования букетов рекомендую использовать не вариативные товары, а плагины опций товара . 

Тогда и поставлена задача решается и вообще работать проще.
Похожие вопросы