Jump to content

[Résolu] Récupérer la langue du visiteur dans une classe


Recommended Posts

Bonjour à toutes et à tous,

je vais essayé d'être clair: sur un site que je dois réaliser je dois pouvoir changer le transporteur par défaut selon la langue du visiteur. Je sais que Prestashop peut gérer ce type de chose mais de manière unique sur toutes les langues. Ce n'est donc pas ce que je cherche à faire et je dois donc mettre les mains dans le code.

Je doit faire cette manip' car mon client veut que le prix par défaut de l'expédition change (dans le bloc panier notamment) selon la langue de visiteur. En fait, même si ce n'est pas tout à fait exact, mon client part du principe qu'un visiteur qui lit le site en espagnol se fera livrer en Espagne, Français -> France etc...

Je suis donc allé dans le dossier classes et j'ai édité le fichier cart.php

Dans celui ci vers la ligne 650 j'ai trouvé le code suivant:

// If no product added, return 0
       if ($orderTotal <= 0 AND !intval(self::getNbProducts($this->id)))
           return $shipping_cost;


       // If no carrier, select default one
       if (!$id_carrier)
           $id_carrier = $this->id_carrier;
       if (empty($id_carrier))
           $id_carrier = Configuration::get('PS_CARRIER_DEFAULT');
       if (!isset(self::$_carriers[$id_carrier]))
           self::$_carriers[$id_carrier] = new Carrier(intval($id_carrier));
       $carrier = self::$_carriers[$id_carrier];
       if (!Validate::isLoadedObject($carrier))
           die(Tools::displayError('Hack attempt: "no default carrier"'));
       if (!$carrier->active)
           return $shipping_cost;



Je crois bien que c'est ici que le prix de la livraison est décidé et notament par rapport au transporteur par défaut.

Mon problème est que je n'arrive pas à récupérer la langue que le visiteur a choisie sur le site. Après une fois que j'ai la langue il me suffit de faire des tests pour implémenter "en dur" la variable $shipping_cost

Ex

if ($langue == "fr")
  $shipping_cost = "8.90";



Merci pour votre aide très précieuse.

Link to comment
Share on other sites

@Pierre Yves: Merci c'était simple en fait c'est exactement ça que je cherchais. Merci beaucoup

@Julien: Euh... c'est juste un extrait que j'ai mis là (que j'ai recopié du fichier original de Presta) :-)

Merci pour votre aide précieuse et rapide

Link to comment
Share on other sites

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...