Skip to content

Instantly share code, notes, and snippets.

@miniMAC
Last active December 1, 2021 07:33
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save miniMAC/a8efc4c2660f7279aafb341d73cd89a3 to your computer and use it in GitHub Desktop.
Save miniMAC/a8efc4c2660f7279aafb341d73cd89a3 to your computer and use it in GitHub Desktop.
Applicare a WooCommerce uno sconto in un certo range di date
<?php
/**
* Applicare uno sconto nel carrello, se siamo el range di 2 date
* (giorno settato compreso)
*/
function applica_sconto_per_range_di_date( $cart ) {
// Se siamo in admin e non è una chiamata AJAX
if ( ( is_admin() && ! defined( 'DOING_AJAX' ) ) ) {
return;
}
$oggi = strtotime('now');
$inizio = strtotime('01-12-2021'); // Impostare qui una data di inizio promozione
$fine = strtotime('31-12-2021'); // Impostare qui la data di fine promozione
// Controllo se siamo nel periodo corretto
if ( ($oggi >= $inizio) && ($oggi <= $fine) ) {
// La regola è applicata e siamo nel range delle due date
// Prendo il sub totale nel carrello
$sub_totale_carrello = WC()->cart->get_subtotal();
// Calcolo il 5% di sconto
$percentuale_di_sconto = 5; // Settare qui la percentuale di sconto
$sconto = ($sub_totale_carrello * $percentuale_di_sconto) / 100;
// Applico lo sconto
$cart->add_fee( __( 'Sconto speciale', 'woocommerce')." (-$percentuale_di_sconto%)", -$sconto );
}
}
add_action( 'woocommerce_cart_calculate_fees', 'applica_sconto_per_range_di_date', 20, 1 );
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment