Ikoshop Posted December 18, 2024 Share Posted December 18, 2024 (edited) Est-ce que quelqu'un saurait me dire où se trouve les fichiers à modifier la page liste de produits, à l'endroit indiqué par 1 ou 2 sur l'image en PJ? La version de Prestashop est la 1.7.8.11. J'essaie de suivre les tutoriaux de Pierre Belin mais malheureusement la structure et le nom des fichiers entre la 1.7.6.1 e la 1.7.8.11 semble complètement différents. Je voudrais ajouter un bouton qui déclenche une méthode à un des endroits indiqués. Merci Edited Thursday at 01:28 PM by Ikoshop solved (see edit history) Link to comment Share on other sites More sharing options...
Mediacom87 Posted December 18, 2024 Share Posted December 18, 2024 Bonjour, Je crois que nous avons des nouvelles pages ici, donc il faut passer certainement par une modification sur les bases twig et synfony, peut-être que la doc pourra vous aider avec ses exemples https://devdocs.prestashop-project.org/1.7/modules/sample-modules/ Link to comment Share on other sites More sharing options...
Ikoshop Posted December 18, 2024 Author Share Posted December 18, 2024 Merci... qu'est-ce que c'est compliqué n'empêche de suivre ! Chaque version change radialement la façon de faire. Juste pour ajouter un bouton, il faut lire un tas de doc, suivre des vidéos, essayer de faire soi-même, réaliser que tout est différent et les infos ne servent plus à rien, apprendre encore des nouvelles technologies... je pense que je vais finir par payer quelqu'un pour faire le dev, car à sc rythme là on n'avancera jamais. Link to comment Share on other sites More sharing options...
CHRISCOM Posted December 18, 2024 Share Posted December 18, 2024 @Ikoshop en effet cela évolue beaucoup et cela devient vite un sac de nœud, mais dans ce genre de cas la solution va être de créer un module et/ou des overrides si nécessaire. Link to comment Share on other sites More sharing options...
Ikoshop Posted December 19, 2024 Author Share Posted December 19, 2024 Ben, justement, c'est la création de module qui est hyper-compliquée du coup, surtout qu'à chaque MAJ de Prestashop il faut tout réécrire à partir de 0 visiblement. Link to comment Share on other sites More sharing options...
CHRISCOM Posted December 29, 2024 Share Posted December 29, 2024 Si vous faites un override propre la mise à jour de prestashop n'en fera rien sauf si vous passez du 1.5 à une 8.0, il y a de forte change que les fonctions sont différentes. Pour la création du module, vous avez un github d'exemple de module prestashop dont vous pouvez vous inspirer: https://github.com/PrestaShop/example-modules Link to comment Share on other sites More sharing options...
Ikoshop Posted Thursday at 09:03 AM Author Share Posted Thursday at 09:03 AM (edited) J'ai trouvé ce guide https://devdocs.prestashop-project.org/8/modules/concepts/hooks/use-hooks-on-modern-pages/#first-step-select-the-right-hook qui devrait me permettre de rajouter les boutons que je veux dans la liste déroulante 'paramètres'. Cependant, j'ai comme l'impression que le hook displayDashboardToolbarIcons ne fonctionne pas car j'ai beau mettre du code ou des logs dans la fonction hookDisplayDashboardToolbarIcons, rien ne se passe quand je clique sur le bouton en question. Est-ce que quelqu'un a déjà réussi à utiliser ce hook? Prestashop 8.2 En mode debug, la liste des hooks appelés ne contient pas displayDashboardToolbarIcons mais elle contient bien d'autre hooks comme hookDisplayDashboardToolbarTopMenu. Si je modifie mon module pour prendre en compte ce hook à la place, alors il reste dans les hooks non reçu par les modules. Edited Thursday at 09:24 AM by Ikoshop (see edit history) Link to comment Share on other sites More sharing options...
CHRISCOM Posted Thursday at 10:38 AM Share Posted Thursday at 10:38 AM Vérifié si le hook est bien greffer au module et ajouté un dump dans la fonction de votre module avec un die. comme ceci: public function hookDisplayDashboardToolbarTopMenu($hookParams) { dump($hookParams); die; } Si vous avez le dump qui apparait c'est que le hook fonctionne. Link to comment Share on other sites More sharing options...
Ikoshop Posted Thursday at 10:52 AM Author Share Posted Thursday at 10:52 AM (edited) Merci. En effet, en utilisant hookDisplayDashboardToolbarTopMenu et en greffant l'accroc manuellement dans le backoffice j'arrive bien à afficher un bouton dans le menu. Seul bémol, le bouton s'affiche partout dans PrestaShop et non seulement dans l'écran de liste de produits. Mais c'est un bon, début, merci encore. Selon la doc, cette ligne devrait limiter l'affichage à l'écran catalogue if ($this->isSymfonyContext() && $hookParams['route'] === 'admin_product_catalog') { mais 'route' n'est pas reconnu et envoie un runtime error. hookParams n'a que 4 éléments donc j'imagine que ce 'route' est caché quelque part dans ['smarty']. Edited Thursday at 11:00 AM by Ikoshop (see edit history) Link to comment Share on other sites More sharing options...
Ikoshop Posted Thursday at 11:06 AM Author Share Posted Thursday at 11:06 AM (edited) Il y a un autre moyen, valable pour Prestashop 8, si quelqu'un le cherche if ($this->context->controller->controller_name === 'AdminProducts') Edited Thursday at 11:06 AM by Ikoshop (see edit history) Link to comment Share on other sites More sharing options...
CHRISCOM Posted Thursday at 11:39 AM Share Posted Thursday at 11:39 AM Oui, vous pouvez utiliser cette méthode en effet, en vérifiant le controller. 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