add_filter('woocommerce_sale_flash', 'adp_savings_on_sales_flash', 10, 3); function adp_savings_on_sales_flash($flash, $post, $product) { $percentage = ''; if ($product->get_type() == 'variable') { $processedProduct = adp_functions()->calculateProduct($product, 1); if ($processedProduct instanceof ADPBaseVersionIncludesPriceDisplayProcessedVariableProduct && !is_null($processedProductLowestPrice = $processedProduct->getLowestPriceProduct()) && $processedProduct->areRulesApplied()) { $minVariationPrice = $processedProductLowestPrice->getCalculatedPrice(); $initialPrice = $processedProductLowestPrice->getOriginalPrice(); $percentage = round((($initialPrice - $minVariationPrice) / $initialPrice) * 100); } elseif ($product->is_on_sale()) { $available_variations = $product->get_variation_prices(); $max_percentage = 0; foreach ($available_variations['regular_price'] as $key => $regular_price) { $sale_price = $available_variations['sale_price'][$key]; if ($sale_price < $regular_price) { $percentage = round((($regular_price - $sale_price) / $regular_price) * 100); if ($percentage > $max_percentage) { $max_percentage = $percentage; } } } $percentage = $max_percentage; } } elseif (in_array($product->get_type(), ['simple', 'external', 'variation'])) { $processedProduct = adp_functions()->calculateProduct($product, 1); if ($processedProduct instanceof ADPBaseVersionIncludesPriceDisplayProcessedProductSimple && $processedProduct->areRulesApplied()) { $initialPrice = $processedProduct->getOriginalPrice(); $calculatedPrice = $processedProduct->getCalculatedPrice(); $percentage = round((($initialPrice - $calculatedPrice) / $initialPrice) * 100); } elseif ($product->is_on_sale()) { $percentage = round((($product->get_regular_price() - $product->get_sale_price()) / $product->get_regular_price()) * 100); } } return $percentage ? '-' . $percentage . '%' : $flash; } One Step geellakk - Page 4 of 4 - Naili veebipood

One Step geellakk

Go to Top