Jump to content

[SOLVED] Ajouter bouton sur écran liste produits


Recommended Posts

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

image.png

Prestashop_product_list.png

Edited by Ikoshop
solved (see edit history)
Link to comment
Share on other sites

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

  • 2 weeks later...

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 by Ikoshop (see edit history)
Link to comment
Share on other sites

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

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 by Ikoshop (see edit history)
Link to comment
Share on other sites

  • Ikoshop changed the title to [SOLVED] Ajouter bouton sur écran liste produits

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