Jump to content

Frais de port supplémentaire même lorsqu'ils sont offerts


Recommended Posts

Le code suivant permet d'ajouter les frais de port supplémentaire même lorsqu'ils sont offerts sur prestashop 1.5.

Du type, frais de port offert à partir de 50€, mais j'ai un produit qui est encombrant ou plus lourd et je veux mettre 10€ supplémentaires, car mon transporteur me facture plus cher ce produit.

De base Prestashop ne rajoute pas les frais de port supplémentaire si je dépasse le prix ou le poids du réglage des frais de port offerts.

L'alternative c'est de changer un peu le code de la "classe" dans le fichier "cart.php" ligne 2637.

 

 

// Free fees

$free_fees_price = 0;

if (isset($configuration['PS_SHIPPING_FREE_PRICE']))

$free_fees_price = Tools::convertPrice((float)$configuration['PS_SHIPPING_FREE_PRICE'], Currency::getCurrencyInstance((int)$this->id_currency));

$orderTotalwithDiscounts = $this->getOrderTotal(true, Cart::BOTH_WITHOUT_SHIPPING, null, null, false);

if ($orderTotalwithDiscounts >= (float)($free_fees_price) && (float)($free_fees_price) > 0)

{

 

// Additional Shipping Cost per product

foreach ($products as $product)

if (!$product['is_virtual']){

$shipping_cost += $product['additional_shipping_cost'] * $product['cart_quantity'];

}

 

Cache::store($cache_id, $shipping_cost);

 

return $shipping_cost;

}

 

if (isset($configuration['PS_SHIPPING_FREE_WEIGHT'])

&& $this->getTotalWeight() >= (float)$configuration['PS_SHIPPING_FREE_WEIGHT']

&& (float)$configuration['PS_SHIPPING_FREE_WEIGHT'] > 0)

{

// Additional Shipping Cost per product

foreach ($products as $product)

if (!$product['is_virtual']){

$shipping_cost += $product['additional_shipping_cost'] * $product['cart_quantity'];

}

 

Cache::store($cache_id, $shipping_cost);

return $shipping_cost;

}

 

 

Maintenant, les frais de ports supplémentaire s'ajoutent et peuvent être gérer depuis les fiches produits plus finement.

  • Like 1
Link to comment
Share on other sites

  • 7 months later...

Bonjour,

 

Auriez-vous une idée pour configurer des frais de port lorsque le client demande que sa commande soit envoyée en deux fois. J'aimerai que le deuxième envoi facture les frais de port quelque soit le montant de la commande. 

A l'heure actuelle, si le client atteint le franco de port et choisi de recevoir en deux fois sa commande, il ne paye aucun des envois. Or c'est bien pour la première commande que les frais de port sont offerts et pas sur la deuxième. 

 

Si vous avez une idée, merci ! 

Link to comment
Share on other sites

  • 1 year later...
  • 2 months later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...