Menu

Listes des hooks de PrestaShop

6 min - 26 janvier 2021 - 2

Dans cet article, vous retrouverez les informations sur les hooks par défaut de PrestaShop. Tout d’abord, avec des termes simples, nous allons vous exliquer comment la solution PrestaShop appel les Hooks..

Qu’est-ce qu’un “Hook” dans Prestashop ?

Comme vous le savez probablement, Prestashop est un logiciel Web qui permet à n’importe qui de créer des modules, ce qui signifie que tout le monde peut écrire un logiciel pour étendre les fonctionnalités de Prestashop. Le hook Prestashop est le meilleur moyen d’insérer, d’ajouter ou de placer des données (à la fois du texte normal et des informations de la base de données) aux endroits importants de votre boutique, comme la colonne de gauche, la colonne de droite, la page d’accueil, l’en-tête, le texte, etc. peut ajouter des hooks dans certaines actions comme la création de comptes ou l’envoi de courrier. Certains développeurs affirment que dans Prestashop, il n’y a pas beaucoup de CROCHETS par défaut – nous pouvons donc créer nos propres crochets, mais c’est un sujet pour un article séparé. Donc, comme je l’ai dit, il existe deux types de “hooks”, qui vous permettent d’ajouter des données, ou une sorte d’actions dans d’autres actions.

Les différents Hooks de PrestaShop Front-Office

Page d’accueil et éléments généraux du site Web

Nom du hookFichierVisibleDescription
headerheader.phpNonAppel entre les balises HEAD. Emplacement idéal pour ajouter les fichiers JavaScript et CSS.
topheader.phpOuiAppel dans l’en-tête de la page.
leftColumnheader.phpOuiAppel lors du chargement de la colonne de gauche.
rightColumnfooter.phpOuiAppel lors du chargement de la colonne de droite.
footerfooter.phpOuiAppel dans le pied de page de la page.
homeindex.phpOuiAppel au centre de la page d’accueil.

Hook de la page produit

Nom du hook Fichier Visible Description
extraLeft product.php Oui Appel juste avant le lien “Imprimer”, sous l’image.
extraRight product.php Oui Appel juste après le bloc du bouton “Ajouter au panier”.
productActions product.php Oui Appel à l’intérieur du bloc du bouton “Ajouter au panier”, juste après le bouton.
productOutOfStock product.php Oui Appel à l’intérieur du bloc du bouton “Ajouter au panier”, juste après les informations “Disponibilité”.
productfooter product.php Oui Appel juste avant les onglets
productTab product.php Oui Appel dans la liste des onglets, tels que “Plus d’infos”, “Fiche technique”, “Accessoires” … Emplacement idéal pour un onglet supplémentaire, dont le contenu est géré par le hook productTabContent.
productTabContent product.php Oui Appel lorsqu’un clic est effectué sur un onglet. Emplacement idéal pour le contenu d’un onglet défini à l’aide de l’onglet produit hook.

Hook pour le tunnel de commande (panier)

Nom du hook Fichier Visible Description
cart Class: Cart.php Non Appel juste après la création ou la mise à jour d’un panier.
shoppingCart order.php Oui Appel juste en dessous du tableau des articles du panier
shoppingCartExtra order.php Oui Appel après le tableau des articles du panier, juste au-dessus des boutons de navigation
createAccountTop autdentication.php Oui Appel avec le formulaire de création de compte client, juste au-dessus du bloc “Vos informations personnelles”.
createAccountForm autdentication.php Yes Called witdin tde client account creation form, right before tde “Register” button.
createAccount autdentication.php Non Appel juste après la création du compte client.
customerAccount my-account.php Oui Appel sur la page d’accueil du compte client, après la liste des liens disponibles. Emplacement idéal pour ajouter un lien vers cette liste.
myAccountBlock Module: blockmyaccount.php Oui Appel dans le bloc “Mon compte”, dans la colonne de gauche, sous la liste des liens disponibles. Emplacement idéal pour ajouter un lien vers cette liste.
autdentication autdentication.php Oui Appel juste après l’identification du client, uniquement si l’authentification est valide (l’adresse e-mail et le mot de passe sont tous les deux OK).

Hook pour le bloc recherche

Nom du hook Fichier Visible Description
search Class: Search.php Non Appelé après une recherche. Emplacement idéal pour analyser et / ou gérer la requête et les résultats de recherche.

Hook pour la page choix du transporteur

Nom du hook Fichier Visible Description
extraCarrier order.php Yes Appel après la liste des opérateurs disponibles, pendant le processus de commande. Emplacement idéal pour ajouter un transporteur, comme ajouté par un module.

Hook pour la page paiement

Hook name File location Visible Description
payment order.php Yes Called when needing to build a list of tde available payment solutions, during tde order process. Ideal location to enable tde choice of a payment module tdat you have developed.
paymentReturn order-confirmation.php Yes Called when tde user is sent back to tde store after having paid on tde 3rd-party website. Ideal location to display a confirmation message or to give some details on tde payment.
orderConfirmation order-confirmation.php Oui double paymentReturn
backBeforePayment order.php Non Appel lors de l’affichage de la liste des solutions de paiement disponibles. Emplacement idéal pour rediriger l’utilisateur au lieu d’afficher ladite liste (par exemple, paiement PayPal en 1 clic).

Page retour de produit

Nom du hook Fichier Visible Description
orderReturn order-follow.php Non Appel lorsque le client demande à renvoyer sa commande.
PDFInvoice Class: PDF.php Oui Appel lors de l’affichage de la facture au format PDF. Emplacement idéal pour afficher du contenu dynamique ou statique dans la facture

Les différents Hook PrestaShop Back-office

Les hook général

Non du hook Fichier Visible Description
backOfficeTop header.inc.php Oui Appel dans l’en-tête, au-dessus des onglets.
backOfficeHeader header.inc.php Non Appel entre les balises HEAD. Emplacement idéal pour ajouter des fichiers JavaScript et CSS.
backOfficeFooter footer.inc.php Oui Appel dans le pied de page, au-dessus de la ligne “Powered By PrestaShop”.
backOfficeHome index.php Oui Appel au centre de la page d’accueil.

Hook pour la page commande et détails de la commande

Nom du hook Fichier Visible Description
newOrder Class: PaymentModule.php Non Appel pendant le processus de création de la nouvelle commande, juste après sa création.
paymentConfirm Class: Hook.php Non Appelé lorsque le statut d’une commande devient “Paiement accepté”.
updateOrderStatus Class: OrderHistory.php Non Appel lorsque le statut d’une commande est modifié, juste avant qu’il ne soit réellement modifié.
postUpdateOrderStatus Class: OrderHistory.php Non Appel lorsque le statut d’une commande est modifié, juste après sa modification.
cancelProduct AdminOrders.php Non Appel lorsqu’un article est supprimé d’une commande, juste après la suppression.
invoice AdminOrders.php Oui Appel lorsque les détails de la commande tde sont affichés, au-dessus du bloc d’informations sur le client
adminOrder AdminOrders.php Oui Appel lorsque les détails de la commande tde sont affichés, sous le bloc Informations client
orderSlip AdminOrders.php Non Appel lors de la création d’un avoir, juste après sa création.

Hook pour la page produit

Nom du hook Fichier Visible Description
addproduct AdminProducts.php Non Appel lorsqu’un produit est créé ou dupliqué, juste après ladite création / duplication.
updateproduct AdminProducts.php Non Appel lorsqu’un produit est mis à jour avec une nouvelle image, juste après ladite mise à jour.
deleteproduct Class: Product.php Non Appel lorsqu’un produit est supprimé, juste avant ladite suppression.
updateQuantity Class: PaymentModule.php Non Appel lors d’une validation d’une commande, dont le statut est autre chose que “annulé” ou “erreur de paiement”, pour chacun des articles de la commande
updateProductAttribute Class: Product.php Non Appel lorsqu’une déclinaison de produit est mise à jour, juste après ladite mise à jour.
watermark AdminProducts.php Non Appel lorsqu’une image est ajoutée à un produit, juste après ledit ajout.

Hook page statistique

Hook name File location Visible Description
GraphEngine Class: ModuleGraph.php Oui Appel lorsqu’un graphique de statistiques est affiché.
GridEngine Module: GridEngine.php Oui Appel lorsque la grille d’étoiles est affichée.
AdminStatsModules AdminStatsTab.php Oui Appel lorsque la liste des modules de statistiques est affichée.

Hook pour la page client

Nom du hook Fichier Visible Description
adminCustomers AdminCustomers.php Oui Appel lorsque les détails d’un client sont affichés, juste après la liste des groupes de clients auxquels appartient le client actuel.

Hook pour la page transporteur

Nom du hook Fichier Visible Description
updateCarrier AdminCarriers.php Non Appel pendant la mise à jour d’un opérateur, juste après ladite mise à jour.