Recentemente ho lavorato ad un sito ecommerce realizzato con Woocommerce su WordPress, alle categorie sono stati applicati 3 scaglioni di sconto :
- da 80€ a 200€ = 10% di sconto
- da 201€ a 500€ = 15% di sconto
- da 501 a 9999€ = 20% di sconto
Visto che esiste un plugin che fa già questo, ho usato Dynamic Pricing di WooThemes
Per mostrare l’ammontare di sconto in percentuale nel riepilogo dell’ordine in fase di checkout, ho utilizzato questa piccola funzione da inserire nel file functions.php o realizzando un plugin per WordPress.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
function get_percent_discount_custom(){ $cart_items = WC()->cart->cart_contents; $details = get_option('_a_totals_pricing_rules'); $percent = 0; foreach ($cart_items as $cart_item){ $discount = $cart_item['discounts']; if(empty($discount)) continue; if($details[$discount['set_id']]['collector']['type'] == 'cart_total'){ foreach ($details[$discount['set_id']]['rules'] as $rule){ $regular_price = $discount['display_price'] * $cart_item['quantity']; if($rule['type'] == 'percentage_discount' && $regular_price >= $rule['from'] && $regular_price <= $rule['to'] ) $percent = $rule['amount']; } } if($percent != 0) break; } return $percent; } add_action('woocommerce_review_order_after_order_total', 'show_discount_percent_custom'); function show_discount_percent_custom(){ $percent = get_percent_discount_custom(); if($percent > 0): ?> <tr class="order-total"> <th>Stai risparmiando : </th> <td><?= $percent ?>%</td> </tr> <?php endif; } |
Ecco il risultato
Programmatore WordPress Esperto WooCommerce
Sono l’autore di questo blog con tanti trucchi e guide su WordPress e WooCommerce.