sku based discount bar (variable product)
Display a discount bar based on SKU for variable products.
add_filter('advanced_woo_discount_rules_check_sku_filter', function($product_sku, $product, $operation_values, $operation_method, $sale_badge){
if(class_exists('\Wdr\App\Helpers\Woocommerce') && $sale_badge){
$available_variations = \Wdr\App\Helpers\Woocommerce::availableProductVariations($product);
$result = false;
if(!empty($available_variations)){
foreach($available_variations as $variation_values ){
$variation_id = isset($variation_values['variation_id']) ? $variation_values['variation_id'] : 0;
if(!empty($variation_id)){
$product_variation = \Wdr\App\Helpers\Woocommerce::getProduct($variation_id);
$product_sku = \Wdr\App\Helpers\Woocommerce::getProductSku($product_variation);
if ('in_list' === $operation_method) {
$result = (in_array($product_sku, $operation_values));
} elseif ('not_in_list' === $operation_method) {
$result = !(in_array($product_sku, $operation_values));
}
if($result){
return true;
}
}
}
}
}
return $product_sku;
}, 10, 5);