{"id":1641,"date":"2026-07-05T14:20:03","date_gmt":"2026-07-05T11:20:03","guid":{"rendered":"https:\/\/presta.site\/blog\/docs\/uncategorized\/display-locations-reference-vacation-mode-for-prestashop\/"},"modified":"2026-07-08T11:35:19","modified_gmt":"2026-07-08T08:35:19","password":"","slug":"display-locations-reference-vacation-mode-for-prestashop","status":"publish","type":"docs","link":"https:\/\/presta.site\/blog\/en\/docs\/prestashop-modules\/vacation-mode\/display-locations-reference-vacation-mode-for-prestashop\/","title":{"rendered":"Display Locations Reference &#8211; Vacation Mode for PrestaShop"},"content":{"rendered":"<p>This guide to <strong>Vacation Mode display locations<\/strong> covers top banners, popups, product pages, checkout hooks, and styling options in PrestaShop.<\/p>\n<p>The Vacation mode module displays holiday and vacation notices through PrestaShop theme hooks. This guide explains each display placement available in the module configuration, the styling options for each, and how to troubleshoot visibility issues.<\/p>\n<p><em>Note: This guide covers the eight storefront display placements. Order email notifications are configured on the same form but are documented in the <a href=\"https:\/\/presta.site\/blog\/en\/docs\/prestashop-modules\/vacation-mode\/managing-vacation-profiles-vacation-mode-for-prestashop\/#order-email-notifications\">Managing Vacation Profiles guide<\/a>. Disable-add-to-cart options are documented in <a href=\"https:\/\/presta.site\/blog\/en\/docs\/prestashop-modules\/vacation-mode\/managing-vacation-profiles-vacation-mode-for-prestashop\/#disable-add-to-cart\">Managing Vacation Profiles<\/a>.<\/em><\/p>\n<p><!--more--><\/p>\n<h2>Vacation Mode display locations overview<\/h2>\n<h2>Understanding Display Placements<\/h2>\n<p>This <strong>Vacation Mode display locations<\/strong> maps each checkbox in the module to a theme hook.<\/p>\n<p>In the module configuration, each vacation profile has a section titled <strong>Select the places where you would like to display the information:<\/strong>. Each checkbox corresponds to a display placement. When you enable a placement, a rich-text editor appears where you enter the message customers will see.<\/p>\n<p>Behind the scenes, each placement connects to one or more PrestaShop hooks &#8211; insertion points defined by your theme. The module registers on the primary hook for each placement and can optionally use an alternative hook if your theme does not support the default position. See the <a href=\"https:\/\/devdocs.prestashop-project.org\/9\/modules\/concepts\/hooks\/\" target=\"_blank\" rel=\"noopener\">PrestaShop hooks documentation<\/a> for how hooks work in themes.<\/p>\n<h2>Complete List of Display Placements<\/h2>\n<p>The table in this <strong>Vacation Mode display locations<\/strong> lists every storefront placement.<\/p>\n<p><a href=\"https:\/\/presta.site\/blog\/wp-content\/uploads\/pstv-vacation-docs\/top-banner-position.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/presta.site\/blog\/wp-content\/uploads\/pstv-vacation-docs\/top-banner-position.png\" alt=\"Vacation Mode top banner display on PrestaShop storefront\" width=\"919\" height=\"255\" class=\"aligncenter size-full wp-image-1636\" srcset=\"https:\/\/presta.site\/blog\/wp-content\/uploads\/pstv-vacation-docs\/top-banner-position.png 919w, https:\/\/presta.site\/blog\/wp-content\/uploads\/pstv-vacation-docs\/top-banner-position-300x83.png 300w, https:\/\/presta.site\/blog\/wp-content\/uploads\/pstv-vacation-docs\/top-banner-position-768x213.png 768w\" sizes=\"auto, (max-width: 919px) 100vw, 919px\" \/><\/a><\/p>\n<table>\n<thead>\n<tr>\n<td>Placement<\/td>\n<td>Primary hook<\/td>\n<td>Alternative positions<\/td>\n<td>Available options<\/td>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><strong>Top banner:<\/strong><\/td>\n<td><code class=\"codecolorer text default\"><span class=\"text\">displayBanner<\/span><\/code><\/td>\n<td>Position #1 (<code class=\"codecolorer text default\"><span class=\"text\">displayAfterBodyOpeningTag<\/span><\/code>)<\/td>\n<td>Background color, Sticky (No \/ Top \/ Bottom), Constrain block width, Block margins<\/td>\n<\/tr>\n<tr>\n<td><strong>Popup:<\/strong><\/td>\n<td><code class=\"codecolorer text default\"><span class=\"text\">displayFooter<\/span><\/code><\/td>\n<td>Position #1 (<code class=\"codecolorer text default\"><span class=\"text\">displayBeforeBodyClosingTag<\/span><\/code>)<\/td>\n<td> &mdash; <\/td>\n<\/tr>\n<tr>\n<td><strong>Home page:<\/strong><\/td>\n<td><code class=\"codecolorer text default\"><span class=\"text\">displayHome<\/span><\/code><\/td>\n<td> &mdash; <\/td>\n<td>Background color, Constrain block width, Block margins<\/td>\n<\/tr>\n<tr>\n<td><strong>Left column:<\/strong><\/td>\n<td><code class=\"codecolorer text default\"><span class=\"text\">displayLeftColumn<\/span><\/code><\/td>\n<td>Right column (<code class=\"codecolorer text default\"><span class=\"text\">displayRightColumn<\/span><\/code>)<\/td>\n<td>Background color, Block margins<\/td>\n<\/tr>\n<tr>\n<td><strong>Product page:<\/strong><\/td>\n<td><code class=\"codecolorer text default\"><span class=\"text\">displayProductAdditionalInfo<\/span><\/code><\/td>\n<td>Product footer, Product buttons, Extra left, Extra right, Delivery info<\/td>\n<td>Background color, Block margins<\/td>\n<\/tr>\n<tr>\n<td><strong>Cart page:<\/strong><\/td>\n<td><code class=\"codecolorer text default\"><span class=\"text\">displayShoppingCart<\/span><\/code><\/td>\n<td>Cart footer (<code class=\"codecolorer text default\"><span class=\"text\">displayShoppingCartFooter<\/span><\/code>)<\/td>\n<td>Background color, Block margins<\/td>\n<\/tr>\n<tr>\n<td><strong>Checkout page:<\/strong><\/td>\n<td><code class=\"codecolorer text default\"><span class=\"text\">displayCheckoutSummaryTop<\/span><\/code><\/td>\n<td>Custom checkout hook (<code class=\"codecolorer text default\"><span class=\"text\">displayCheckout<\/span><\/code>)<\/td>\n<td>Background color, Block margins<\/td>\n<\/tr>\n<tr>\n<td><strong>Reassurance info:<\/strong><\/td>\n<td><code class=\"codecolorer text default\"><span class=\"text\">displayReassurance<\/span><\/code><\/td>\n<td> &mdash; <\/td>\n<td>Background color, Block margins<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><em>On default PrestaShop themes (Classic, Hummingbird), <strong>Checkout page<\/strong> works with the primary hook &#8211; no alternative position is required. Use <strong>Custom checkout hook<\/strong> only if your theme defines <code class=\"codecolorer text default\"><span class=\"text\">displayCheckout<\/span><\/code> in a different location.<\/em><\/p>\n<p><em>Important: <strong>Reassurance info:<\/strong> may appear in different places depending on your theme. In many default themes, it is displayed on the product page, in the shopping cart, and during checkout.<\/em><\/p>\n<p><a href=\"https:\/\/presta.site\/blog\/wp-content\/uploads\/pstv-vacation-docs\/product-page-position.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/presta.site\/blog\/wp-content\/uploads\/pstv-vacation-docs\/product-page-position.png\" alt=\"Vacation Mode notice on PrestaShop product page\" width=\"919\" height=\"255\" class=\"aligncenter size-full wp-image-1638\" srcset=\"https:\/\/presta.site\/blog\/wp-content\/uploads\/pstv-vacation-docs\/product-page-position.png 919w, https:\/\/presta.site\/blog\/wp-content\/uploads\/pstv-vacation-docs\/product-page-position-300x83.png 300w, https:\/\/presta.site\/blog\/wp-content\/uploads\/pstv-vacation-docs\/product-page-position-768x213.png 768w\" sizes=\"auto, (max-width: 919px) 100vw, 919px\" \/><\/a><\/p>\n<h2>Configuring a Display Placement<\/h2>\n<p>Each step below applies one placement from this <strong>Vacation Mode display locations<\/strong>.<\/p>\n<p>To enable a placement on a vacation profile:<\/p>\n<ol>\n<li>Open <strong>Modules &rarr; Module Manager &rarr; Vacation mode &rarr; Configure<\/strong>.<\/li>\n<li>Select the vacation tab you want to edit.<\/li>\n<li>Check the box next to the desired placement (for example, <strong>Top banner:<\/strong>).<\/li>\n<li>Enter your message in the rich-text editor. Use the language dropdown to enter text for each shop language.<\/li>\n<li>Adjust styling options if needed (see below).<\/li>\n<li>Click <strong>Save<\/strong> on that placement block.<\/li>\n<\/ol>\n<p>Repeat for each placement you want to use. You can enable multiple placements on the same vacation profile with different messages.<\/p>\n<h2>Use Alternative Position<\/h2>\n<p>The <strong>Vacation Mode display locations<\/strong> alternative hooks help when your theme omits a default position.<\/p>\n<p>Some placements offer a <strong>Use alternative position:<\/strong> dropdown with additional hook options. Select an alternative when:<\/p>\n<ul>\n<li>The primary hook is not available in your theme<\/li>\n<li>The notice appears in an unexpected location with the default hook<\/li>\n<li>You want finer control over placement (for example, <strong>Right column<\/strong> instead of <strong>Left column:<\/strong>)<\/li>\n<\/ul>\n<p><em>Note: Some positions may not be available &#8211; it depends on your theme.<\/em><\/p>\n<p>When an alternative position is selected, the module renders the message on that hook instead of the primary one.<\/p>\n<h2>Styling Options<\/h2>\n<p>Styling options in this <strong>Vacation Mode display locations<\/strong> vary by placement.<\/p>\n<p>Styling options appear below the text editor when a placement supports them. Not all placements offer every option.<\/p>\n<h3>Background color:<\/h3>\n<p>Set a background color for the notice block using the color picker. Supports RGBA values for semi-transparent backgrounds. The color is applied to the message container on the storefront.<\/p>\n<h3>Sticky:<\/h3>\n<p>Available on <strong>Top banner:<\/strong> only. Choose <strong>No<\/strong>, <strong>Top<\/strong>, or <strong>Bottom<\/strong>. When set to Top or Bottom, the banner stays fixed while the customer scrolls and the module adds body padding so content is not hidden behind the banner.<\/p>\n<h3>Constrain block width:<\/h3>\n<p>Available on <strong>Top banner:<\/strong> and <strong>Home page:<\/strong>. When enabled, the notice content is wrapped in a standard <code class=\"codecolorer text default\"><span class=\"text\">.container<\/span><\/code> element so it matches the main content width of your theme. Enable this if the block appears wider than your page content &#8211; for example, in a full-width page section.<\/p>\n<h3>Block margins (px):<\/h3>\n<p>Set margins around the notice block in pixels using the Top, Right, Left, and Bottom fields. Leave a field empty for no margin on that side. Values are combined into a CSS margin on the storefront.<\/p>\n<h2>Popup Behavior<\/h2>\n<p>Popup behavior in this <strong>Vacation Mode display locations<\/strong> applies on every page where the hook fires.<\/p>\n<p>The <strong>Popup:<\/strong> placement displays your message as a modal overlay when the page loads.<\/p>\n<ul>\n<li>The popup opens automatically on pages where the hook fires.<\/li>\n<li>A <strong>Don&apos;t show again<\/strong> button lets customers dismiss the popup.<\/li>\n<li>When dismissed, the popup is hidden for <strong>seven days<\/strong> in that customer&apos;s browser (stored in browser local storage). After seven days, it appears again on the next visit.<\/li>\n<li>Each vacation profile&apos;s popup is tracked separately by vacation ID.<\/li>\n<\/ul>\n<p>To use an alternative popup position, select <strong>Position #1<\/strong> (<code class=\"codecolorer text default\"><span class=\"text\">displayBeforeBodyClosingTag<\/span><\/code>) in <strong>Use alternative position:<\/strong>.<\/p>\n<h2>Adjusting Hook Position with Design &rarr; Positions<\/h2>\n<p>This <strong>Vacation Mode display locations<\/strong> section explains hook ordering in the Back Office.<\/p>\n<p>When you activate vacation mode, the notice may appear below other module content on a page. This is default PrestaShop behavior &#8211; newly installed modules are placed at the bottom of hook output.<\/p>\n<p>To move a notice higher on the page:<\/p>\n<ol>\n<li>Go to <strong>Design &rarr; Positions<\/strong> in the PrestaShop back office.<\/li>\n<li>In the module filter at the top, select <strong>Vacation mode<\/strong>.<\/li>\n<li>Find the hook where your notice appears (for example, <code class=\"codecolorer text default\"><span class=\"text\">displayHome<\/span><\/code> for the home page).<\/li>\n<li>Drag the <strong>Vacation mode<\/strong> row to the top of that hook&apos;s module list.<\/li>\n<li>Save. The module content will now render first among modules on that hook.<\/li>\n<\/ol>\n<p><a href=\"https:\/\/presta.site\/blog\/wp-content\/uploads\/pstv-vacation-docs\/homepage-position.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/presta.site\/blog\/wp-content\/uploads\/pstv-vacation-docs\/homepage-position.png\" alt=\"Vacation Mode notice position on PrestaShop homepage\" width=\"919\" height=\"255\" class=\"aligncenter size-full wp-image-1637\" srcset=\"https:\/\/presta.site\/blog\/wp-content\/uploads\/pstv-vacation-docs\/homepage-position.png 919w, https:\/\/presta.site\/blog\/wp-content\/uploads\/pstv-vacation-docs\/homepage-position-300x83.png 300w, https:\/\/presta.site\/blog\/wp-content\/uploads\/pstv-vacation-docs\/homepage-position-768x213.png 768w\" sizes=\"auto, (max-width: 919px) 100vw, 919px\" \/><\/a><\/p>\n<h2>Multiple Active Vacations on the Same Placement<\/h2>\n<p>If multiple vacation profiles are active and both have the same placement enabled, all matching messages are displayed for that hook. Each message renders as a separate block on the storefront.<\/p>\n<p>In the Back Office, the active-vacation indicator badge is generic and does not identify which profile is active. On the module configuration page, a warning banner lists active vacations with dates when set (<strong>Vacation mode active: YYYY-MM-DD &#8212; YYYY-MM-DD<\/strong> or <strong>Vacation mode active.<\/strong>).<\/p>\n<h2 id=\"troubleshooting-display-issues\">Troubleshooting Display Issues<\/h2>\n<p>This <strong>Vacation Mode display locations<\/strong> troubleshooting section covers the most common visibility problems.<\/p>\n<h3>The notice does not appear on the storefront<\/h3>\n<p>Check the following in order:<\/p>\n<ul>\n<li><strong>Activate:<\/strong> is set to <strong>Yes<\/strong> on the vacation tab.<\/li>\n<li><strong>Dates:<\/strong> if set, the current date falls within the range. Future vacations are not yet active.<\/li>\n<li>The placement checkbox is enabled and you clicked <strong>Save<\/strong>.<\/li>\n<li>Message text is entered for the customer&apos;s language (not just the default language).<\/li>\n<li>Your theme supports the selected hook. Try <strong>Use alternative position:<\/strong> if available.<\/li>\n<li>The module is not at the bottom of a hook where it is hidden by other content &#8211; check <strong>Design &rarr; Positions<\/strong>.<\/li>\n<\/ul>\n<h3>The notice appears but in the wrong place on the page<\/h3>\n<p>Use <strong>Design &rarr; Positions<\/strong> to reorder the module on the hook, or switch to an <strong>Use alternative position:<\/strong> option if the theme renders the primary hook in an unexpected location.<\/p>\n<h3>The popup keeps reappearing<\/h3>\n<p>The <strong>Don&apos;t show again<\/strong> button suppresses the popup for seven days per browser. Clearing browser data, using a different browser, or visiting in private\/incognito mode will show the popup again. This is per-customer browser behavior, not a module setting.<\/p>\n<h3>Partial translation warning in the Back Office<\/h3>\n<p>If you see a warning like &quot;%s missing text for %s language.&quot;, an enabled placement has text in some languages but not all active shop languages. Fill in the missing language or disable the placement.<\/p>\n<h3>Changes not visible immediately after saving<\/h3>\n<p>Front-office output is cached with a key based on the next vacation start or end boundary for the current shop. Saving a placement or changing vacation settings clears the module cache, so changes should appear promptly after <strong>Save<\/strong>. If you still see old content, clear your PrestaShop cache from <strong>Advanced Parameters &rarr; Performance<\/strong>.<\/p>\n<h2>Related Guides<\/h2>\n<ul>\n<li>Learn how to manage vacation profiles, scheduling, and order emails in the <a href=\"https:\/\/presta.site\/blog\/en\/docs\/prestashop-modules\/vacation-mode\/managing-vacation-profiles-vacation-mode-for-prestashop\/\">Managing Vacation Profiles guide<\/a>.<\/li>\n<li>Return to the <a href=\"https:\/\/presta.site\/blog\/en\/docs\/prestashop-modules\/vacation-mode\/prestashop-vacation-mode-documentation\/\">Main Documentation<\/a>.<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>This guide to Vacation Mode display locations covers top banners, popups, product pages, checkout hooks, and styling options in PrestaShop. The Vacation mode module displays holiday and vacation notices through PrestaShop theme hooks. This guide explains each display placement available in the module configuration, the styling options for each, and how to troubleshoot visibility issues. &hellip; <a href=\"https:\/\/presta.site\/blog\/en\/docs\/prestashop-modules\/vacation-mode\/display-locations-reference-vacation-mode-for-prestashop\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">Display Locations Reference &#8211; Vacation Mode for PrestaShop<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","template":"","meta":{"footnotes":""},"doc_category":[245],"doc_tag":[],"class_list":["post-1641","docs","type-docs","status-publish","hentry","doc_category-vacation-mode"],"year_month":"2026-07","word_count":1415,"total_views":0,"reactions":{"happy":0,"normal":0,"sad":0},"author_info":{"name":"Alex C.","author_nicename":"polosat","author_url":"https:\/\/presta.site\/blog\/author\/polosat\/"},"doc_category_info":[{"term_name":"Vacation Mode","term_url":"https:\/\/presta.site\/blog\/en\/docs\/prestashop-modules\/vacation-mode\/"}],"doc_tag_info":[],"_links":{"self":[{"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/docs\/1641","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/docs"}],"about":[{"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/types\/docs"}],"author":[{"embeddable":true,"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/comments?post=1641"}],"version-history":[{"count":10,"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/docs\/1641\/revisions"}],"predecessor-version":[{"id":1722,"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/docs\/1641\/revisions\/1722"}],"wp:attachment":[{"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/media?parent=1641"}],"wp:term":[{"taxonomy":"doc_category","embeddable":true,"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/doc_category?post=1641"},{"taxonomy":"doc_tag","embeddable":true,"href":"https:\/\/presta.site\/blog\/wp-json\/wp\/v2\/doc_tag?post=1641"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}