Swedge Posted June 9, 2009 Share Posted June 9, 2009 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.phpDans 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_costEx if ($langue == "fr") $shipping_cost = "8.90"; Merci pour votre aide très précieuse. Link to comment Share on other sites More sharing options...
Pierre-Yves Posted June 9, 2009 Share Posted June 9, 2009 Je ne comprend pas tout à fait ce que tu souhaite faire Mais bon, voici comment récupérer la langue du visiteur ^^. global $cookie; $cookie->id_lang; Link to comment Share on other sites More sharing options...
Atch Posted June 9, 2009 Share Posted June 9, 2009 Et un mexicain qui paye le transport au prix espagnol ça marche?Atch Link to comment Share on other sites More sharing options...
Julien Breux Posted June 9, 2009 Share Posted June 9, 2009 Manquerai pas quelques hook dans le tuneling de commandes ?? Link to comment Share on other sites More sharing options...
Swedge Posted June 10, 2009 Author Share Posted June 10, 2009 @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 More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now