Jump to content

Lancer un php (d'un module) lors d'une action dans PrestaShop


Recommended Posts

Bonjour,

Je maîtrise PHP5 mais je me perds dans la logique de PrestaShop.
Je souhaite lancer un script .php (faisant partie d'un module que j'ai créé et qui est correctement installé).
Le lancer via un cron : ok, c'est bon.

Mais j'ai un script que je souhaite lancer lolrs de la mise à jour d'un article en stock par l'admin.

Quelle est la méthode pour le lancer ?
Je vois bien qu'il est question de hooks et d'actions, mais je ne trouve pas de doc claire. On n'explique que l'intégration de modifications visuelles. Ce n'est pas le cas. Le script doit être invisible.

Link to comment
Share on other sites

Il vous faut greffer votre module sur le hook adéquat.

En l’occurrence, un hook qui est appelé à chaque mise à jour de produit.

En l’occurrence, product Update devrait faire l'affaire.

 

Dans votre module, vous aurais nécessairement une fonction hookActionProductUpdate(), qui sera alors appelé à chaque mise à jour du produit, et dans laquelle vous faites ce que vous avez à faire.

  • Like 1
Link to comment
Share on other sites

Ok. Donc 2 choses à faire :

1. "greffer le module sur le hook" (je vais relire la doc sur la création d'un module)
2. utiliser une fonction dont le simple nom suffira à signifier à Prestashop qu'elle soit exécutée au moment voulu

Je vais essayer de faire ça correctement.

Merci !!

Link to comment
Share on other sites

En fait, pour greffer le module sur ActionProductUpdate, il te faudra la fonction hookActionProductUpdate($params), sinon Prestashop va t'envoyer balader :) - c'est un truc que tu peux automatiser dans la fonction install du module également.

 

C'est cet aspect la qui définit si un module peut être greffer sur tel ou tel hook.

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

Ok.
Sinon, j'ai l'impression que la page qui liste les hooks : http://doc.prestashop.com/display/PS15/Les+hooks+de+PrestaShop+1.5

ne liste pas tous les hooks.
Je ne trouve d'ailleurs que : actionProductSave

Pardon ! Autant pour moi ! Il est bien répertorié.

Je vais plutôt utiliser actionProductSave, non ? Cela fonctionnera en ajout et en modif, théoriquement.



 

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

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