Front-office Hooks
New hooks since v1.4
Hook name |
Hook description |
---|---|
actionAdminMetaControllerUpdate_optionsBefore | |
actionAdminMetaSave | After saving configuration in AdminMeta |
actionAuthentication | |
actionBeforeAuthentication | Before authentication |
actionCartSave | |
actionCustomerAccountAdd | Called when a new customer successfully creates account |
actionHtaccessCreate | After .htaccess creation |
actionObjectCategoryDeleteAfter | |
actionObjectCategoryUpdateAfter | |
actionObjectCmsDeleteAfter | |
actionObjectCmsUpdateAfter | |
actionObjectManufacturerDeleteAfter | |
actionObjectManufacturerUpdateAfter | |
actionObjectProductDeleteAfter | |
actionObjectProductUpdateAfter | |
actionObjectSupplierDeleteAfter | |
actionObjectSupplierUpdateAfter | |
actionOrderDetail | To set the follow-up in Smarty when order detail is called. |
actionOrderReturn | |
actionOrderSlipAdd | Called when a quantity of one product change in an order. |
actionOrderStatusPostUpdate | |
actionOrderStatusUpdate | Launch modules when the order's status changes. |
actionPaymentCCAdd | Payment CC added |
actionPaymentConfirmation | |
actionSearch | |
actionShopDataDuplication | |
actionTaxManager | |
actionUpdateQuantity | Quantity is updated only when the customer effectively place his order. |
actionValidateOrder | |
actionWatermark | |
displayAdminCustomers | Launch modules when the tab AdminCustomers is displayed on back-office. |
displayAdminOrder | Launch modules when the tab AdminOrder is displayed on back-office. |
displayAdminStatsGraphEngine | |
displayAdminStatsGridEngine | |
displayAdminStatsModules | |
displayBackOfficeFooter | |
displayBackOfficeHeader | |
displayBackOfficeHome | |
displayBackOfficeTop | |
displayBeforeCarrier | This hook is display before the carrier list on Front office |
displayBeforePayment | Redirect user to the module instead of displaying payment modules |
displayCarrierList | |
displayCustomerAccount | Display on page account of the customer |
displayCustomerAccountForm | Display some information on the form to create a customer account |
displayCustomerAccountFormTop | |
displayFooter | Add block in footer |
displayFooterProduct | Add new blocks under the product description |
displayHeader | A hook which allow you to do things in the header of each pages |
displayHome | |
displayInvoice | Add blocks to invoice (order) |
displayLeftColumn | |
displayLeftColumnProduct | |
displayMyAccountBlock | Display extra information inside the "my account" block |
displayMyAccountBlockfooter | Display extra information inside the "my account" block |
displayOrderConfirmation | Called on order confirmation page |
displayOrderDetail | Displayed on order detail on front office |
displayPayment | |
displayPaymentReturn | |
displayPaymentTop | Top of payment page |
displayPDFInvoice | Allow the display of extra information into the PDF invoice |
displayProductButtons | Put new action buttons on product page |
displayProductComparison | Extra Product Comparison |
displayProductTab | Called on order product page tabs |
displayProductTabContent | Called on order product page tabs |
displayRightColumn | |
displayRightColumnProduct | |
displayShoppingCart | Display some specific information |
displayShoppingCartFooter | Display some specific information on the shopping cart page |
displayTop | A hook which enables you to do things at the top of each page. |
displayHeader |
A hook which allow you to do things in the header of each pages |
displayHome |
|
displayInvoice |
Add blocks to invoice (order) |
displayLeftColumn |
|
displayLeftColumnProduct |
|
displayMyAccountBlock |
Display extra information inside the "my account" block |
displayMyAccountBlockfooter |
Display extra information inside the "my account" block |
displayOrderConfirmation |
Called on order confirmation page |
displayOrderDetail |
Displayed on order detail on front office |
displayPDFInvoice |
Allow the display of extra information into the PDF invoice |
displayPayment |
|
displayPaymentReturn |
|
displayPaymentTop |
Top of payment page |
displayProductButtons |
Put new action buttons on product page |
displayProductComparison |
Extra Product Comparison |
displayProductTab |
Called on order product page tabs |
displayProductTabContent |
Called on order product page tabs |
displayRightColumn |
|
displayRightColumnProduct |
|
displayShoppingCart |
Display some specific information |
displayShoppingCartFooter |
Display some specific information on the shopping cart page |
displayTop |
A hook which enables you to do things at the top of each page. |
Updated hooks since v1.4
Most of these hooks are the same as they were in version 1.4 of PrestaShop, but have been renamed with either an "action" or "display" prefix in order to be compatible with the new 1.5 naming scheme.
Old hook name |
New hook name |
Hook description |
---|---|---|
AdminStatsModules |
displayAdminStatsModules |
|
GraphEngine |
displayAdminStatsGraphEngine |
|
GridEngine |
displayAdminStatsGridEngine |
|
PDFInvoice |
displayPDFInvoice |
Allow the display of extra information into the PDF invoice |
addproduct |
actionProductAdd |
|
adminCustomers |
displayAdminCustomers |
Launch modules when the tab AdminCustomers is displayed on back-office. |
adminOrder |
displayAdminOrder |
Launch modules when the tab AdminOrder is displayed on back-office. |
afterCreateHtaccess |
actionHtaccessCreate |
After |
afterDeleteAttribute |
actionAttributeDelete |
On deleting attribute feature value |
afterDeleteAttributeGroup |
actionAttributeGroupDelete |
On deleting attribute group |
afterDeleteFeature |
actionFeatureDelete |
On deleting attribute feature |
afterDeleteFeatureValue |
actionFeatureValueDelete |
On deleting attribute feature value |
afterSaveAdminMeta |
actionAdminMetaSave |
After save configuration in AdminMeta |
afterSaveAttribute |
actionAttributeSave |
On saving attribute feature value |
afterSaveAttributeGroup |
actionAttributeGroupSave |
On saving attribute group |
afterSaveFeature |
actionFeatureSave |
On saving attribute feature |
afterSaveFeatureValue |
actionFeatureValueSave |
On saving attribute feature value |
afterSaveProduct |
actionProductSave |
On saving products |
attributeForm |
displayAttributeForm |
Add fields to the form "attribute value" |
attributeGroupForm |
displayAttributeGroupForm |
Add fields to the form "attribute group" |
authentication |
actionAuthentication |
|
backBeforePayment |
displayBeforePayment |
Redirect user to the module instead of displaying payment modules |
backOfficeFooter |
displayBackOfficeFooter |
|
backOfficeHeader |
displayBackOfficeHeader |
|
backOfficeHome |
displayBackOfficeHome |
|
backOfficeTop |
displayBackOfficeTop |
|
beforeAuthentication |
actionBeforeAuthentication |
Before authentication |
beforeCarrier |
displayBeforeCarrier |
This hook is display before the carrier list on Front office |
cancelProduct |
actionProductCancel |
This hook is called when you cancel a product in an order |
cart |
actionCartSave |
|
categoryAddition |
actionCategoryAdd |
|
categoryDeletion |
actionCategoryDelete |
|
categoryUpdate |
actionCategoryUpdate |
|
createAccount |
actionCustomerAccountAdd |
Called when a new customer successfully creates an account |
createAccountForm |
displayCustomerAccountForm |
Display some information on the form to create a customer account |
createAccountTop |
displayCustomerAccountFormTop |
|
customerAccount |
displayCustomerAccount |
Display on page account of the customer |
deleteProductAttribute |
actionProductAttributeDelete |
|
deleteproduct |
actionProductDelete |
This hook is called when a product is deleted |
extraCarrier |
displayCarrierList |
|
extraLeft |
displayLeftColumnProduct |
|
extraProductComparison |
displayProductComparison |
Extra Product Comparison |
extraRight |
displayRightColumnProduct |
|
featureForm |
displayFeatureForm |
Add fields to the form "feature" |
featureValueForm |
displayFeatureValueForm |
Add fields to the form "feature value" |
footer |
displayFooter |
Add block in footer |
header |
displayHeader |
A hook which allow you to do things in the header of each pages |
home |
displayHome |
|
invoice |
displayInvoice |
Add blocks to invoice (order) |
leftColumn |
displayLeftColumn |
|
myAccountBlock |
displayMyAccountBlock |
Display extra information inside the "my account" block |
newOrder |
actionValidateOrder |
|
orderConfirmation |
displayOrderConfirmation |
Called on order confirmation page |
orderDetail |
actionOrderDetail |
To set the follow-up in Smarty when order detail is called |
orderDetailDisplayed |
displayOrderDetail |
Displayed on order detail on front office |
orderReturn |
actionOrderReturn |
|
orderSlip |
actionOrderSlipAdd |
Called when a quantity of one product change in an order. |
payment |
displayPayment |
|
paymentCCAdded |
actionPaymentCCAdd |
Payment CC added |
paymentConfirm |
actionPaymentConfirmation |
|
paymentReturn |
displayPaymentReturn |
|
paymentTop |
displayPaymentTop |
Top of payment page |
postProcessAttribute |
actionAttributePostProcess |
On post-process in admin feature value |
postProcessAttributeGroup |
displayAttributeGroupPostProcess |
On post-process in admin attribute group |
postProcessFeature |
displayFeaturePostProcess |
On post-process in admin feature |
postProcessFeatureValue |
displayFeatureValuePostProcess |
On post-process in admin feature value |
postUpdateOrderStatus |
actionOrderStatusPostUpdate |
|
processCarrier |
actionCarrierProcess |
|
productActions |
displayProductButtons |
Put new action buttons on product page |
productListAssign |
actionProductListOverride |
Assign product list to a category |
productOutOfStock |
actionProductOutOfStock |
Make action while product is out of stock |
productTab |
displayProductTab |
Called on order product page tabs |
productTabContent |
displayProductTabContent |
Called on order product page tabs |
productfooter |
displayFooterProduct |
Add new blocks under the product description |
rightColumn |
displayRightColumn |
|
search |
actionSearch |
|
shoppingCart |
displayShoppingCartFooter |
Display some specific information on the shopping cart page |
shoppingCartExtra |
displayShoppingCart |
Display some specific information |
taxManager |
actionTaxManager |
|
top |
displayTop |
A hook which allow you to do things at the top of each pages. |
updateCarrier |
actionCarrierUpdate |
This hook is called when a carrier is updated |
updateOrderStatus |
actionOrderStatusUpdate |
Launch modules when the order's status changes. |
updateProductAttribute |
actionProductAttributeUpdate |
|
updateQuantity |
actionUpdateQuantity |
Quantity is updated only when the customer effectively place his order. |
updateproduct |
actionProductUpdate |
|
watermark |
actionWatermark |
|
Front-office and back-office
These hooks are valid for both v1.4 and 1.5 of PrestaShop.
Existing front-office hooks
Home page and general site pages
Hook name
|
Description
|
---|---|
displayHeader | Called within the HTML <head> tags. Ideal location for adding JavaScript and CSS files. |
displayTop | Called in the page's header. |
displayLeftColumn | Called when loading the left column. |
displayRightColumn | Called when loading the right column. |
displayFooter | Called in the page's footer. |
displayHome | Called at the center of the homepage. |
Product page
Hook name
|
Description
|
---|---|
displayLeftColumnProduct | Called right before the "Print" link, under the picture. |
displayRightColumnProduct | Called right after the block for the "Add to Cart" button. |
displayProductButtons | Called inside the block for the "Add to Cart" button, right after that button. |
actionProductOutOfStock | Called inside the block for the "Add to Cart" button, right after the "Availability" information. |
displayFooterProduct | Called right before the tabs. |
displayProductTab | Called in tabs list, such as "More info", "Data sheet", "Accessories", etc. |
displayProductTabContent | Called when a tab is clicked. |
Cart page
Hook name
|
Description
|
---|---|
actionCartSave | Called right after a cart creation or update. |
displayShoppingCartFooter | Called right below the cart items table. |
displayShoppingCart | Called after the cart's table of items, right above the navigation buttons. |
displayCustomerAccountFormTop | Called within the client account creation form, right above the "Your personal information" block. |
displayCustomerAccountForm | Called within the client account creation form, right before the "Register" button. |
actionCustomerAccountAdd | Called right after the client account creation. |
displayCustomerAccount | Called on the client account homepage, after the list of available links. Ideal location to add a link to this list. |
displayMyAccountBlock | Called within the "My account" block, in the left column, below the list of available links. This is the ideal location to add a link to this list. |
displayMyAccountBlockfooter | Displays extra information inside the "My account" block. |
actionAuthentication | Called right after the client identification, only if the authentication is valid (e-mail address and password are both OK). |
actionBeforeAuthentication | Called right before authentication. |
Search page
Hook name
|
Description
|
---|---|
actionSearch | Called after a search is performed. Ideal location to parse and/or handle the search query and results. |
Carrier choice page
Hook name
|
Description |
---|---|
displayBeforeCarrier | Displayed before the carrier list on front-office. |
displayCarrierList | Called after the list of available carriers, during the order process. Ideal location to add a carrier, as added by a module. |
Payment page
Hook name
|
Description
|
---|---|
displayPaymentTop | Top of payment page. |
displayPayment | Called when needing to build a list of the available payment solutions, during the order process. Ideal location to enable the choice of a payment module that you have developed. |
displayPaymentReturn | Called when the user is sent back to the store after having paid on the 3rd-party website. Ideal location to display a confirmation message or to give some details on the payment. |
displayOrderConfirmation | A duplicate of paymentReturn. |
displayBeforePayment | Called when displaying the list of available payment solutions. Ideal location to redirect the user instead of displaying said list (i.e., 1-click PayPal checkout). |
Order page
Hook name
|
Description
|
---|---|
actionOrderReturn | Called when the customer request to send his merchandise back to the store, and if now error occurs. |
displayPDFInvoice | Called when displaying the invoice in PDF format. Ideal location to display content within the invoice. |
Mobile theme hooks
All these hooks are specific to PrestaShop's default mobile theme.
The four first ones are in PrestaShop's internal hooks database, so the user can attach an action/interface to these hooks using the Modules > Positions page.
All the other ones exist in the mobile theme TPL files, but are not in the internal hooks database. A developer can still use them to attach content to specific portion of the code.
Hook name
|
Description
|
---|---|
displayMobileTopSiteMap | |
displayMobileHeader | |
displayMobileShoppingCartTop | |
displayMobileAddToCartTop | |
displayMobileShoppingCartTop | |
displayMobileShoppingCartBottom | |
displayMobileTopSiteMap | |
displayMobileFooterChoice | |
displayMobileShoppingCartTop | |
displayMobileShoppingCartBottom | |
displayMobileIndex | |
mobileCustomerAccount | |
displayMobileTop | |
displayMobileAddToCartTop | |
displayMobileShoppingCartTop | |
displayMobileShoppingCartButton | |
displayMobileShoppingCartBottom | |
displayMobileShoppingCartTop | |
displayMobileShoppingCartBottom |
Existing back-office hooks
General hooks
Hook name
|
Description
|
---|---|
displayBackOfficeTop | Called within the header, above the tabs. |
displayBackOfficeHeader | Called between the HEAD tags. Ideal location for adding JavaScript and CSS files. |
displayBackOfficeFooter | Called within the page footer, above the "Power By PrestaShop" line. |
displayBackOfficeHome | Called at the center of the homepage. |
Orders and order details
Hook name
|
Description
|
---|---|
actionValidateOrder | Called during the new order creation process, right after it has been created. |
actionPaymentConfirmation | Called when an order's status becomes "Payment accepted". |
actionOrderStatusUpdate | Called when an order's status is changed, right before it is actually changed. |
actionOrderStatusPostUpdate | Called when an order's status is changed, right after it is actually changed. |
actionProductCancel | Called when an item is deleted from an order, right after the deletion. |
displayInvoice | Called when the order's details are displayed, above the Client Information block. |
displayAdminOrder | Called when the order's details are displayed, below the Client Information block. |
actionOrderSlipAdd | Called during the creation of a credit note, right after it has been created. |
Products
Hook name
|
Description
|
---|---|
actionProductSave | Called when saving products. |
actionUpdateQuantity | Called during an the validation of an order, the status of which being something other than "canceled" or "Payment error", for each of the order's items. |
actionProductAttributeUpdate | Called when a product declination is updated, right after said update. |
actionProductAttributeDelete | Called when a product declination is deleted. |
actionWatermark | Called when an image is added to a product, right after said addition. |
displayAttributeForm | Add fields to the form "attribute value". |
displayAttributeGroupForm | Add fields to the form "attribute group". |
displayAttributeGroupPostProcess | Called when post-process in admin attribute group. |
displayFeatureForm | Add fields to the form "feature". |
displayFeaturePostProcess | Called when post-process in admin feature. |
displayFeatureValueForm | Add fields to the form "feature value". |
displayFeatureValuePostProcess | Called when post-process in admin feature value. |
Statistics
Hook name
|
Description
|
---|---|
displayAdminStatsGraphEngine | Called when a stats graph is displayed. |
displayAdminStatsGridEngine | Called when the grid of stats is displayed. |
displayAdminStatsModules | Called when the list of stats modules is displayed. |
Clients
Hook name
|
Description
|
---|---|
displayAdminCustomers | Called when a client's details are displayed, right after the list of the clients groups the current client belongs to. |
Carriers
Hook name
|
Description
|
---|---|
actionCarrierUpdate | Called during a carrier's update, right after said update. |