• Никакой политики на форуме. Иначе - бан!
  • Вопрос без рабочей ссылки на проблему считается риторическим. Без ссылки и скриншота - провокацией!
  • Темы озаглавленные с маленькой буквы или капсом удаляются без предупреждения!

Не выводится правильная цена в вариативном товаре

Haket001

Новичок
Добрый день
есть такой код:
Код:
add_filter('woocommerce_get_regular_price', 'customPrice', 10, 2); // Изменяем обычную цену
add_filter('woocommerce_get_price', 'customPrice', 10, 2); // Изменяем цену
 
add_filter('woocommerce_variation_prices_sale_price', 'customPrice', 10, 2); // Изменяем цену со скидкой у вариативных товаров
add_filter('woocommerce_variation_prices_regular_price', 'customPrice', 10, 2); // Изменяем обычную цену у вариативных товаров
add_filter('woocommerce_variation_prices_price', 'customPrice', 10, 2); // Изменяем цену у вариативного товара

 
function customPrice($price, $product)
{
    // Конвертируем цены только у товаров имеющих тег 'usd'
    if (has_term('usd', 'product_tag', $product->id)) {
        $rateusd = 20; // Курс валюты
        $price = $price * $rateusd;
    }
    if (has_term('eur', 'product_tag', $product->id)) {
        $rateeur = 10; // Курс валюты
        $price = $price * $rateeur;
    }
 
    return $price;
}

Он отвечает за умножение цены в зависимости от тега. на обычных товрах работает как надо, а на вариативных множит только диапазон, а не цену варианта
 
Сверху Снизу