Page positions
Four of the configuration tabs — Product Page, Shopping Cart, Checkout, Checkout Register — share the same basic shape: a Placement position drop-down that picks where the widget is rendered, plus optional context-specific overrides.
Each context can be independently turned off by selecting Disabled in its placement drop-down.
Product Page
Section titled “Product Page”| Placement option | Where the widget appears |
|---|---|
disabled | Don’t render the widget on product pages |
belowAddToCard | Just under the “Add to cart” button (default placement) |
aboveAddToCard | Above the “Add to cart” button |
besidePrice | Inline next to the product price |
Out of stock visibility
Section titled “Out of stock visibility”The Product Page tab is the only one with out-of-stock visibility overrides. Each widget part can be independently hidden when the product is out of stock:
| Field | Options |
|---|---|
clockHideOutOfStock | disabled (don’t hide) / closeoutOnly (hide for clearance products) / allProducts (hide for any out-of-stock product) |
stepsHideOutOfStock | Same three options |
messageHideOutOfStock | Same three options |
The clearance sale option targets Shopware’s clearance / closeout flag — useful for keeping the urgency clock visible on regular out-of-stock products (where you might restock) but hiding it on items you no longer plan to sell.
Shopping Cart
Section titled “Shopping Cart”| Placement option | Where the widget appears |
|---|---|
disabled | Don’t render |
belowProductListTable | Below the line-item table |
aboveProductListTable | Above the line-item table |
Checkout (confirm)
Section titled “Checkout (confirm)”The widest set of placement options, because the checkout page has more anchor points:
| Placement option | Where the widget appears |
|---|---|
disabled | Don’t render |
atTopOfPage | Above everything, full-page-wide |
atTopPageContainer | Inside the page container, above the rest |
aboveHeader | Above the “Order summary” header |
belowHeader | Below the “Order summary” header |
aboveProductListTable | Above the order line-items |
Checkout Register
Section titled “Checkout Register”The account / register page (/account/register and the inline guest register on checkout):
| Placement option | Where the widget appears |
|---|---|
disabled | Don’t render |
atTopOfPage | Above everything |
aboveHeader | Above the page header |
belowHeader | Below the page header |
Picking the right placement
Section titled “Picking the right placement”A few heuristics:
- Product detail:
belowAddToCardis the default for a reason — the customer’s eye is already on the buy button.besidePriceis good for stores where the price is the focal point. - Cart:
aboveProductListTableworks well as a reassurance line right where the totals are computed. - Checkout confirm:
belowHeaderputs the widget under the “Complete order” page title. - Register:
belowHeaderto highlight delivery as a reason to create an account.
Theme block hooks
Section titled “Theme block hooks”If none of the placement options fit your theme, every widget render goes through a Twig include block — you can extend it from a theme override. See Storefront → Template blocks.