Italian (Italy)
Knowledge Base  >  Vik Appointments  >  Hook  >  Acquisto  >  Pacchetti  >  Before Calculate Total

apply_filters( 'vikappointments_before_calculate_total_save_packages_order', bool $status, VAPCartPackages $cart, object $user )

Fires before calculating the order totals.


Description

Trigger hook to manipulate the total cost before it is going to be calculated.

The prices of the cart are strictly related to the taxes and to the discounts. For this reason it is not possible to change the total cost and the user credit at runtime. Any surcharge/discount have to be applied by using the apposite methods provided by the cart objects.


Parameters

$status

(bool)  True on success, false otherwise.

$cart

(VAPCartPackages)  The cart instance.

$user

(object)  An object holding the details of the current user.


Example

The following example explains how to apply a custom discount.

/**
 * Trigger hook to manipulate the total cost before it is going to be calculated.
 *
 * @param  boolean          $status  True on success, false otherwise.
 * @param  VAPCartPackages  $cart    The cart instance.
 * @param  object           $user    The user details.
 */
add_filter('vikappointments_before_calculate_total_save_packages_order', function($status, $cart, $user)
{
    // create new discount rule
    $discount = new VAPCartDiscount(
        $alias = 'custom-discount',
        $amount = 20.00,
        $is_percent = true
    );

    // register discount within the cart
    $cart->addDiscount($discount);

    return $status;
}, 10, 3);

Changelog

Version Description
1.2 Introduced.
Ultimo aggiornamento: 2021-08-05
Utile?
Potrebbe interessarti:

Questo sito web utilizza i cookie

Questo sito web utilizza cookie e tecnologie simili. Alcune di queste tecnologie sono necessarie per il corretto funzionamento del sito web (essenziali). Altre tecnologie sono utilizzate per valutare il comportamento degli utenti (analisi), per integrare media esterni o per scopi pubblicitari. Se l'utente accetta, queste tecnologie vengono attivate. I dettagli sono riportati nella Privacy Policy. Da questa stessa pagina è inoltre possibile aggiornare/revocare il consenso. Se non si fornisce il consenso, verranno attivati solo i cookie con funzioni essenziali.

Sul nostro sito web utilizziamo tecnologie provenienti dagli Stati Uniti. Pertanto, se acconsentite, acconsentite anche al trasferimento dei vostri dati negli Stati Uniti. Desideriamo sottolineare che gli Stati Uniti non hanno un livello di protezione dei dati paragonabile a quello dell'Unione Europea e che qualsiasi azienda statunitense può essere obbligata dalle autorità statali a consegnare i vostri dati senza che voi abbiate alcuno strumento efficace di protezione legale contro questo.