Jump to content

Alain D.

Members
  • Posts

    15
  • Joined

  • Last visited

Profile Information

  • Location
    France
  • First Name
    Alain
  • Last Name
    Dietrich

Recent Profile Visitors

347 profile views

Alain D.'s Achievements

Newbie

Newbie (1/14)

1

Reputation

  1. Hi if you want to display a banner on a product page depending of the product price, you can add code in header.tpl or product.tpl (depending where you want to display the banner) with a : {if $productPrice > 600} <div id="my-banner">Free delivery !</div> {/if}
  2. Hello, In my shop I have some product with a lot of options, so I created them with the product combinations native tool in Prestashop. then I filled each combination with the good Images and reference. Now my supplier is upgrading the price of some of these options, so I have to do so as well. I am looking for a way (or a module) to : edit the price impact of my attributes (ex: color red, color, blue, size M, size L,...) regenerate only the total price impact of my product combinations In other word I need to update the impact price of combination only, and not regenerate all datas (images and references). I realy don't want to re-fill all the combinations references and images since i have at least about 1000 different combinations. I did look on the Prestashop Addon website but I did not find any module to do so. Please, if someone can help me with this problem or know a good module it would be great ! Thank you in advance for your time. Version de PrestaShop 1.6.1.3
  3. Hello, I'am wondering how to display neighbor categories of a category, on this specific category page. It's almost the same thing from product page on which you can display other product of the same category but i need it to work with category page. Let me be more explicit, here is a categories tree for exemple : CAT 1 CAT A CAT B CAT C CAT 2 ... I would like to display on the CAT A page its neighbor categories (CAT B and CAT C). In fact, I am looking for a way to propose to the visitor the categories of the same thematic, like "don't forget to check this catgories too" (with name and image of this categories). So i suppose I have to get the parent category of the current category and then find a way to display all subcategories of this parent without including the current one. In other words and with the same example from above : On CAT A > get CAT 1 (id) > list CAT A subcategories > exclude CAT A (current one) to get only neighbor categories. Does anybody have an idea of how to proceed ? Or maybe some tips to give me ? Thank you in advance for your time. PS version 1.6
  4. Bien vu merci ! Effectivement avec "Product::" je n'ai plus l'erreur en revanche ma méthode de paiement ne s'affiche pas :/ Voici mon code actuel : public function hookPayment($params) { // 4 catégories dont tous les produits sont eligibles à la méthode de paiement $categories_eligibles = array(283, 5, 9, 22); // On récupère les produits du panier pour vérification $products = Context::getContext()->cart->getProducts(); // On crée une variable d'état qui de base désactive la méthode de paiement $allowed = false; // On crée une boucle qui vérifie l'appartenance des produits du panier à nos $catégories éligibles foreach ($products as $product) { if (Product::idIsOnCategoryId($product['id_product'], $categories_eligibles)) { // Si un produit est éligible on change la variable d'état à TRUE $allowed = true; // on sort du foreach pour éviter de scanner tous les produits inutilement break; } } // Si notre variable d'état est à TRUE on active la méthode de paiement if (!$allowed) return; // Autres érifications de base du module if (!$this->active) return; if (!$this->checkCurrency($params['cart'])) return; $this->smarty->assign(array( 'this_path' => $this->_path, 'this_path_bw' => $this->_path, 'this_path_ssl' => Tools::getShopDomainSsl(true, true).__PS_BASE_URI__.'modules/'.$this->name.'/' )); return $this->display(__FILE__, 'payment.tpl'); } Dans mon panier j'ai pourtant un seul produit, qui appartient à la catégorie dont l'ID est 283 (283 est dans le array $categories_eligibles). Le code me semble pourtant bon et je n'ai aucune erreur.
  5. Oui j'avais oublié le "break;" pour stopper la boucle. En revanche mon code ne semble pas fonctionner car lorsque je souhaite accéder à l'étape 05 (paiement) j'obtiens le message d'erreur suivant : Fatal error: Class 'Products' not found ... in line 156 Le message fait référence à cette ligne de code : if (Products::idIsOnCategoryId($product['id_product'], $categories_eligibles)) { Comment intégrer la classe Product ? Quelque chose m’échappe
  6. Merci pour cette précision ! Je reste dubitatif quand à l'appartenance des produits aux catégories. Exemple de hiérarchie actuel de ma boutique : Bonbons Menthe produit-1 produit-2 Fraise produit-3 produit-4 Si je teste l'id du produi-1 avec votre méthode, est-ce que la catégorie associée sera Menthe ou Bonbons ou les deux ? Si j'ai bien compris ma vérification doit donc ressembler à ça ? : public function hookPayment($params) { // 4 catégories dont tous les produits sont eligibles à la méthode de paiement $categories_eligibles = array(28, 5, 9, 22); // On récupère les produits du panier pour vérification $products = Context::getContext()->cart->getProducts(); // On crée une variable d'état qui de base désactive la méthode de paiement $allowed = false; // On crée une boucle qui vérifie l'appartenance des produits du panier à nos $catégories éligibles foreach ($products as $product) { if (Products::idIsOnCategoryId($product['id_product'], $categories_eligibles)) { // Si un produit est éligible on change la variable d'état à TRUE $allowed = true; } else{ $allowed = false; } } // Si notre variable d'état est à TRUE on active la méthode de paiement if (!$allowed) return; // Autres érifications de base du module if (!$this->active) return; if (!$this->checkCurrency($params['cart'])) return; $this->smarty->assign(array( 'this_path' => $this->_path, 'this_path_bw' => $this->_path, 'this_path_ssl' => Tools::getShopDomainSsl(true, true).__PS_BASE_URI__.'modules/'.$this->name.'/' )); return $this->display(__FILE__, 'payment.tpl'); } Encore merci pour votre temps !
  7. Bonjour Mediacome87, Tout d'abord, merci pour votre réponse. Je ne suis pas certain de comprendre la méthode que vous me suggérez. Pourriez-vous m'éclairer d'avantage ? J'interprète votre réponse de la façon suivante : Cette approche me semble intéressante mais je ne suis pas sûr de comprendre le fonctionnement de : Products::idIsOnCategoryId($id_product, $categories). Après recherches : Les variables de cette méthode sraient dans mon cas : $id_product = int (ID de chaque produit du panier à vérifier ?) $categories = array() (des ID des catégories éligibles ?). Donc si je comprends bien, je crée un array() avec les ID des catégories de produits éligibles ($categories) puis je boucle la vérification des produits du panier avec votre méthode ? Une autre question me vient à l'esprit : $categories doivent être les catégories parents direct des produits ou est-ce qu'il peut y avoir plusieurs niveau de catégories ? J'utilise " Products::idIsOnCategoryId($id_product, $categories) " pour tester la catégorie de chaque produit du panier (par exemple dans une boucle) et lorsque je tombe sur un produit enfant d'une catégorie éligible je stop la boucle de vérification et j'affiche ma méthode de paiement ?
  8. Bonjour, Je travaille sur un module de paiement perso. qui ne doit s'afficher dans le tunnel d'achat qu'à certaines conditions, pour créer ce module je me suis basé sur le module de paiement par chèque. Les conditions d'affichage du nouveau module dans le tunnel d'achat : Les produits du panier doivent faire partie de certaines catégories de produits spécifiques. Le prix HT de chaque produit du panier doit être supérieur à un certain montant. Mon problème est le suivant : Pour gérer la première condition (vérifier que les produits du paniers font partie de certaines catégories) j'ai modifié la fonction hookPayment de mon module comme ceci : public function hookPayment($params) { // Tableau $allowed_products avec les ID des produits éligibles à cette méthode de paiement $allowed_products= array(6244,8871,5,10,12); // Je récupère les produits du panier $products = Context::getContext()->cart->getProducts(); // je compare les produits du panier à ceux du tableau $allowed_products $allowed=false; foreach ($products as $product) { // Si il y a correspondance $allowed = true if (in_array($product['id_product'], $allowed_products)){ $allowed=true; } } if (!$allowed) return; if (!$this->active) return; if (!$this->checkCurrency($params['cart'])) return; $this->smarty->assign(array( 'this_path' => $this->_path, 'this_path_bw' => $this->_path, 'this_path_ssl' => Tools::getShopDomainSsl(true, true).__PS_BASE_URI__.'modules/'.$this->name.'/' )); return $this->display(__FILE__, 'payment.tpl'); } Cette méthode fonctionne mais j'ai beaucoup de produits éligibles pour cette méthode de paiement et pour éviter de taper à la main tous les ID produit dans le tableau $allowed_products, je souhaite savoir comment récupérer les ID des produits de certaines catégories et les intégrer dans le tableau $allowed_products, . Jusqu'à présent je n'ai pas trouvé de solution je dois passer à côté de quelque chose ! -_-' Quelqu'un peut m'aider ou me donner une piste ? Merci d'avance. INFO : Version de PrestaShop 1.6.0.14.
  9. Bonjour, Personnellement, j'ai intégré le code suivant dans le fichier " racineprestashop/themes/votretheme/order-confirmation.tpl " Code : <!-- DÉBUT du code du module de la fonction d'activation Google Avis clients --> <script src="https://apis.google.com/js/platform.js?onload=renderOptIn" async defer></script> <script> var reference = "{$reference_order}"; var email = "{$email}"; var today = new Date(); var dd = today.getDate(); var mm = today.getMonth()+1; //January is 0! var yyyy = today.getFullYear(); if(dd<10){ dd='0'+dd; } if(mm<10){ mm='0'+mm; } var today = yyyy+'-'+mm+'-'+dd; window.renderOptIn = function() { window.gapi.load('surveyoptin', function() { window.gapi.surveyoptin.render( { // REQUIRED "merchant_id":"VOTRE ID", "order_id": reference , "email": email, "delivery_country": "FR", "estimated_delivery_date": today, // OPTIONAL "opt_in_style": "OPT_IN_STYLE" }); }); } </script> <!-- FIN du code du module de la fonction d'activation Google Avis clients --> Lorsque le client arrive sur la page de confirmation de commande, une popup avis client s'affiche demandant son autorisation pour lui soumettre un émail dans lequel il pourra noter son expérience d'achat. Cordialement.
  10. Bonjour, Je souhaite savoir s'il est possible d'afficher la mention " à partir de XX euros" sous l'image des catégories sur la page qui liste toutes les catégories. Pour le moment je peux afficher sur cette page: nom, image, description (courte) de chaque catégorie. L'idée est d'afficher la mention " à partir de XX euros" sur chaque catégorie affichée sur la page Catégorie principale. EX: Catégorie Principale (liste ses sous-catégorie) sousCAT a PRODUIT1 PRODUIT2 PRODUIT3 ... sousCAT b ... sousCAT c Il faudrait afficher la mention sous les images des sousCAT (a,b,c,...) J'ignore comment m'y prendre, je suppose qu'il faudrait créer une variable qui enregistre le prix le moins chers pour chaque catégorie puis la faire s'afficher sur la bonne page ? Version de PrestaShop 1.6.1.3 Merci d'avance pour votre temps .
  11. Ok je pars donc dans cette direction. Merci d'avoir pris le temps pour répondre à mes interrogations. Cordialement.
  12. Cela règle effectivement la question de l'affichage de l'écotaxe (en fonction de celle utilisée) mais ça ne règle pas le problème du montant de la transaction sur la plateforme Paypal. Aucune piste pour régler ce cas de figure ? Cordialement.
  13. D'accord, je comprends bien la nuance entre les deux types d'écotaxe. dans mon cas l'écotaxe est comprise dans le prix mais: Prestashop affiche bien l'écotaxe (à renseigner dans la fiche produit en BO) comprise dans le prix sur la page produit.Donc le prix TTC est bien le prix du produit + TVA + ecotaxe. Paypal lui semble ne pas intégrer cette écotaxe (à renseigner dans la fiche produit en BO) Comment y remédier ? Très cordialement.
  14. Bonjour doekia, Merci pour ta réponse. Concernant l'écoparticipation, peut importe le type d'écoparticipation (écotaxe), elle est entrée manuellement lorsque le produit est créé dans le champ "écoparticipation" dans l'onglet "prix". Mon soucis est que cette écoparticipation est "retirée" par Paypal lorsque le client souhaite payé sur leur plateforme. Or ce n'est pas le cas lorsqu'un autre moyen de paiement est utilisé (ex: module paiement par carte de ma banque). Je ne sais pas comment, ni à quel endroit le module Paypal calcule le montant du produit avant de l'envoyer sur la plateforme sécurisé. La variable du prix total TTC du module Paypal doit être incorrecte mais je ne sais pas où chercher.
  15. Bonjour, J'ai une boutique Prestashop en production proposant diverses méthodes de paiement dont Paypal. Problème: Lorsque le client opte pour le paiement Paypal, lorsque ce dernier est redirigé sur la plateforme Paypal, le prix de la transaction est le prix du produit sans l'écotaxe (écoparticipation). Cela entraîne un état de commande "Erreur de paiement" en BackOffice Prestashop même si le paiement a été viré sur mon compte. Je souhaite bien évidemment que le montant de la transaction via Paypal soit: prix du produit + réduction (s'il y en a) + écotaxe. Précisions: Lorsque le client opte pour d'autres méthodes de paiement, les montants des transactions sont corrects ! Après plusieurs recherches, je suppose donc que le problème se situe au niveau du module Paypal et des variables qu'il utilise pour remonter les infos de transactions vers la plateforme Paypal. Or je ne sais pas où se trouvent ces variables ni comment les modifier. J’appréciais quelques pistes Merci d'avance ! Informations: Version de PrestaShop 1.6.0.14 Informations sur votre serveur Linux x86_64 Version du logiciel serveur Apache Version de PHP 5.4.45-0+deb7u1 Version de MySQL 5.6.26-74.0-log
×
×
  • Create New...