spawns Posted September 11 Share Posted September 11 (edited) Bonjour,Sous Prestashop 8.1.7 , j'essai de coder un module simple qui à pour but d'ajouter le bouton "Ajouter au panier" avec le champs quantité et ses flèches devant. Je n'arrive pas a savoir quel hook utilisé pour tous ce qui concerne les affichage en liste, comme quand on rentre sur une categorie ou les "produits populaires" etc.. DisplayProductList ne fonctionne pas... Merci d'avance de votre aide Edited September 12 by spawns (see edit history) 1 Link to comment Share on other sites More sharing options...
ps8modules Posted September 11 Share Posted September 11 Bonjour. displayProductActions Link to comment Share on other sites More sharing options...
spawns Posted September 11 Author Share Posted September 11 merci pour ta réponse mais cela ne fonction pas rien ne s'affiche chez moi. je te mets mes code si tu veux jeter un oeil monmodule.php <?php if (!defined('_PS_VERSION_')) { exit; } class MonModule extends Module { public function __construct() { $this->name = 'monmodule'; $this->tab = 'front_office_features'; $this->version = '1.0.0'; $this->author = 'moi'; $this->need_instance = 0; $this->bootstrap = true; // Utiliser Bootstrap pour les styles par défaut parent::__construct(); $this->displayName = $this->l('Mon Module'); $this->description = $this->l('Affiche un champ de quantité avec flèches et un bouton "Ajouter au panier" entre le titre et le prix des produits dans la liste.'); $this->ps_versions_compliancy = array('min' => '8.0.0', 'max' => _PS_VERSION_); } public function install() { return parent::install() && $this->registerHook('displayProductActions'); } public function uninstall() { return parent::uninstall(); } public function hookDisplayProductActions($params) { // Spécifiez le chemin du fichier de log $logFile = _PS_MODULE_DIR_ . 'monmodule/log.txt'; // Écrire un message de début de log pour indiquer l'appel du hook file_put_contents($logFile, "Hook displayProductActions appelé\n", FILE_APPEND); // Vérifiez les données reçues et écrivez-les dans le fichier de log if (isset($params['products']) && is_array($params['products'])) { // Écrire les données reçues dans le fichier de log file_put_contents($logFile, "Données produits :\n" . print_r($params['products'], true) . "\n", FILE_APPEND); // Assigner les données au template Smarty $this->context->smarty->assign('products', $params['products']); return $this->display(__FILE__, 'views/templates/hook/displayProductList.tpl'); } else { // Écrire un message si aucune donnée produit n'est disponible file_put_contents($logFile, "Aucune donnée produit disponible dans displayProductActions\n", FILE_APPEND); } return ''; } } displayProductList.tpl {debug} {foreach from=$products item=product} <div class="product-add-to-cart js-product-add-to-cart"> {if !$configuration.is_catalog} <span class="control-label">{l s='Quantity' d='Shop.Theme.Catalog'}</span> <div class="product-quantity clearfix"> <input type="hidden" name="product_id" value="{$product.id_product|escape:'html':'UTF-8'}" > <div class="qty"> <input type="number" name="qty" id="quantity_wanted_{$product.id_product|escape:'html':'UTF-8'}" inputmode="numeric" pattern="[0-9]*" value="1" min="1" step="1" data-step="1" class="input-group form-control" aria-label="{l s='Quantity' d='Shop.Theme.Actions'}" > </div> <div class="add"> <button class="btn btn-primary add-to-cart" data-button-action="add-to-cart" type="submit" > <i class="material-icons shopping-cart"></i> {l s='Add to cart' d='Shop.Theme.Actions'} </button> </div> </div> {hook h='displayProductActions' product=$product} {/if} </div> {/foreach} Link to comment Share on other sites More sharing options...
Mediacom87 Posted September 12 Share Posted September 12 Bonjour, https://devdocs.prestashop-project.org/8/modules/concepts/hooks/list-of-hooks/displayproductlistreviews/ Link to comment Share on other sites More sharing options...
spawns Posted September 12 Author Share Posted September 12 oui c'est le hook que j'ai utilisé a la base mais je n'arrive pas à récupérer les infos du produits. Tu peux faire le test avec mon module Link to comment Share on other sites More sharing options...
ps8modules Posted September 12 Share Posted September 12 (edited) 1 hour ago, spawns said: oui c'est le hook que j'ai utilisé a la base mais je n'arrive pas à récupérer les infos du produits. Tu peux faire le test avec mon module Je mets ici un exemple de module entièrement fonctionnel pour Prestashop 8.x. Jetez un œil à toutes les fonctionnalités, TPL, JS et CSS. ps8mod_productlistcart.zip Edited September 12 by ps8modules.com (see edit history) Link to comment Share on other sites More sharing options...
spawns Posted September 12 Author Share Posted September 12 Col Merci beaucoup 👍👍 1 Link to comment Share on other sites More sharing options...
ps8modules Posted September 12 Share Posted September 12 (edited) J'ai essayé de le programmer le plus simplement possible. Bien entendu, le module peut être modifié et l'option permettant de définir les couleurs des boutons, etc. peut être ajoutée. 😉 Vous pouvez également marquer le sujet comme résolu. Edited September 12 by ps8modules.com (see edit history) Link to comment Share on other sites More sharing options...
spawns Posted September 12 Author Share Posted September 12 Grand Merci à toi, je vais regarder cela de prêt. 1 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