{"id":1310,"date":"2026-09-28T11:45:34","date_gmt":"2026-09-28T11:45:34","guid":{"rendered":"https:\/\/www.8theme.com\/documentation\/salesmax\/?post_type=docs&#038;p=1310"},"modified":"2026-10-05T05:05:57","modified_gmt":"2026-10-05T05:05:57","password":"","slug":"floating-cart","status":"publish","type":"docs","link":"https:\/\/www.8theme.com\/documentation\/salesmax\/main\/boosters\/floating-cart\/","title":{"rendered":"Floating Cart"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"1310\" class=\"elementor elementor-1310\" data-elementor-post-type=\"docs\">\n\t\t\t\t<div class=\"elementor-element elementor-element-9bf1323 e-flex e-con-boxed e-con e-parent\" data-id=\"9bf1323\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-ab88aa5 elementor-widget elementor-widget-text-editor\" data-id=\"ab88aa5\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-lfile-container=\"b97dfc02-3fda-4d7a-833c-6c04eff36112\" data-pm-slice=\"1 1 []\">The <strong>Floating Cart<\/strong> keeps the cart within reach on every page of your store \u2014 a round button in the corner with a live item count, and a slide-out drawer that shows what is in the cart right now. It works on any theme, with both the classic cart and the Cart and Checkout blocks.<\/p><p>\ud83d\udca1 This feature is ideal for stores where shoppers browse several products before buying \u2014 nothing has to be rediscovered on the way to checkout.<\/p><h2>Example Scenarios<\/h2><ul><li>Selling fashion? A shopper adding three sizes can compare them in the drawer and drop the ones they don&#8217;t want, without leaving the category page.<\/li><li>Selling cosmetics? Show a free-shipping bar in the drawer so the shopper sees exactly how much more is needed.<\/li><li>Selling electronics? Let a shopper apply a discount code in the drawer instead of hunting for the cart page.<\/li><li>Selling food or groceries? Quantity steppers in the drawer make it easy to go from 1 to 6 bottles.<\/li><li>Running a promotion? Put the shipping cut-off time in the drawer&#8217;s announcement bar, where every shopper sees it.<\/li><\/ul><h2 id=\"where-it-appears\">Where It Appears<\/h2><p>The launcher button sits in the corner you choose on every storefront page. The cart page and the checkout page are excluded by default, so the floating cart never competes with the real cart or the payment form \u2014 you can switch either on.<\/p><p>The drawer opens when a shopper clicks the launcher and, if you want, automatically after a product is added to the cart.<\/p><h2 id=\"setup-overview\">Booster Setup Overview<\/h2><div class=\"elementor-element elementor-element-4f6c69e elementor-widget elementor-widget-text-editor\" data-id=\"4f6c69e\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\"><div class=\"elementor-widget-container\"><p>1. Navigate to <strong>SalesMax<\/strong>\u00a0<br \/>2. Click on \u201c<b style=\"font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';\">Floating Cart<\/b>\u201c in navigation menu<span style=\"font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';\"><br \/><\/span><span style=\"font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';\">3. Name your booster, configurate settings and save<\/span><\/p><\/div><\/div>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b38a8ec elementor-widget elementor-widget-text-editor\" data-id=\"b38a8ec\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><img decoding=\"async\" class=\"emoji\" role=\"img\" draggable=\"false\" src=\"https:\/\/s.w.org\/images\/core\/emoji\/17.0.2\/svg\/1f4a1.svg\" alt=\"\ud83d\udca1\" \/> After the first save, a <strong>Status<\/strong> section appears at the top of the screen with the <strong>Active<\/strong> switch. Switching it off removes the launcher and the drawer from the storefront.<\/p><h2 id=\"template-type\">Template Type<\/h2><p>Choose the design that suits your store. Both templates show the same information \u2014 they differ in how strongly the drawer reads.<\/p><p>\u2013 <strong>Minimal<\/strong> \u2013 A clean white side panel: quiet header, plain item rows and a solid dark checkout button. Sits comfortably on any theme without competing with it.<\/p><p>\u2013 <strong>Colorful<\/strong> \u2013 A bold dark header band with the item count in a pill and a vibrant emerald-to-teal gradient checkout button. For stores that want the cart to read as a strong call to action.<\/p><p><img decoding=\"async\" class=\"emoji\" role=\"img\" draggable=\"false\" src=\"https:\/\/s.w.org\/images\/core\/emoji\/17.0.2\/svg\/1f4a1.svg\" alt=\"\ud83d\udca1\" \/> <em>The selected template may affect the availability of some display options and elements in the Appearance section.<\/em><\/p><h3 id=\"appearance\">Appearance<\/h3><h4 id=\"general\">General<\/h4><p>The following options are available:<\/p><p><strong>Section title<\/strong><\/p><p>Sets the heading shown at the top of the drawer, next to the item count.<br \/>Use your customers&#8217; own word for it (e.g., \u201cYour Cart\u201d, \u201cShopping bag\u201d).<\/p><p><strong>Description<\/strong><\/p><p>A short note printed in the footer, above the checkout button.<br \/>Use it for the small print that reassures (e.g., \u201cShipping &amp; taxes calculated at checkout.\u201d).<\/p><p>Leave it empty to hide the line.<\/p><p><strong>CTA Button Text<\/strong><\/p><p><strong><br \/><\/strong>Controls the label of the primary button that sends the shopper to checkout (e.g., \u201cCheckout\u201d, \u201cComplete order\u201d).<\/p><h4 id=\"styling\">Styling<\/h4><p>Every color, size and spacing of the drawer lives here, grouped the way the drawer is built:<\/p><p>\u2013 <strong>Template styles<\/strong> \u2013 the panel itself: background color, border radius, border width, style and color.<\/p><p>\u2013 <strong>Header styles<\/strong> \u2013 the title bar: font size, font color, background color.<\/p><p>\u2013 <strong>Body styles<\/strong> \u2013 the scrolling item list: background color and the padding that also aligns the footer with the item rows.<\/p><p>\u2013 <strong>Description styles<\/strong> \u2013 the product names in the list: font size and font color.<\/p><p>\u2013 <strong>CTA button styles<\/strong> \u2013 the checkout button: font size, font color, background color. This color also fills the free-shipping bar.<\/p><p>\u2013 <strong>Launcher button styles<\/strong> \u2013 the floating button: icon color, background color, border width and color, corner radius, the count badge colors, and its <strong>Launcher size<\/strong>, <strong>Side offset<\/strong> and <strong>Vertical offset<\/strong> in pixels.<\/p><p>\u2013 <strong>Announcement bar styles<\/strong> \u2013 background and text color for the announcement line.<\/p><p><img decoding=\"async\" class=\"emoji\" role=\"img\" draggable=\"false\" src=\"https:\/\/s.w.org\/images\/core\/emoji\/17.0.2\/svg\/1f4a1.svg\" alt=\"\ud83d\udca1\" \/> Raise <strong>Side offset<\/strong> or <strong>Vertical offset<\/strong> when a live-chat bubble already sits in the same corner.<\/p><p><em>Note: on the Colorful template the checkout button&#8217;s colors are left empty on purpose, so its gradient is not overridden. The font size still applies.<\/em><\/p><h4 id=\"advanced-drawer-controls\">Advanced \u2192 Drawer controls<\/h4><p>What a shopper can do inside the drawer. All five are on by default.<\/p><p><strong>Quantity controls<\/strong><\/p><p>Show +\/\u2212 steppers and a quantity box shoppers can type into, so they can change quantities without leaving the page.<\/p><p><strong>Remove buttons<\/strong><\/p><p>Show a remove (\u00d7) button on every line.<\/p><p><strong>Checkout button<\/strong><\/p><p>The primary button that sends the shopper straight to checkout.<\/p><p><strong>View cart button<\/strong><\/p><p>A secondary button that opens the full cart page.<\/p><p><strong>Continue shopping link<\/strong><\/p><p>A text link under the buttons that closes the drawer so the shopper can keep browsing.<\/p><h3 id=\"drawer-settings\">Drawer Settings<\/h3><h4 id=\"behaviour\">Behaviour<\/h4><p>How the launcher and drawer act. Colors and typography live in the Appearance section above.<\/p><p><strong>Launcher position<\/strong><\/p><p>Corner for the floating cart button \u2014 Bottom left, Bottom right, Top left or Top right.&lt;br \/&gt;Right-to-left sites start on the opposite corner automatically.<\/p><p><strong>Launcher icon<\/strong><\/p><p>The glyph on the floating button \u2014 Shopping bag, Trolley cart, Basket or Custom image.&lt;br \/&gt;Choose \u201cCustom image\u201d to upload your own; a small square PNG or SVG works best.<\/p><p><strong>Launcher animation<\/strong><\/p><p>A gentle looping motion to draw the eye to the cart button \u2014 None, Pulse, Bounce or Shake.&lt;br \/&gt;It stops while the drawer is open and is disabled for shoppers who prefer reduced motion.<\/p><p><strong>Drawer width (px)<\/strong><\/p><p>Desktop panel width, 320\u2013640 px. On small screens the drawer sizes itself.<\/p><p><strong>Drawer side<\/strong><\/p><p>Which edge the drawer slides in from. Right-to-left sites start on the opposite side automatically.<\/p><p><strong>Open the drawer after a product is added to the cart<\/strong><\/p><p>Opens the drawer on every add to cart, so the shopper sees what they just added.<\/p><p>Ignored automatically when WooCommerce is set to redirect to the cart page after adding a product \u2014 that setting wins.<\/p><p><strong>Hide the launcher while the cart is empty<\/strong><\/p><p>The button appears with the first item and disappears again when the cart empties.<\/p><p><strong>Float the drawer with a margin<\/strong><\/p><p>Leaves a gap on the top, side and bottom instead of sticking the drawer to the screen edges.<\/p><h4 id=\"where-it-shows\">Where it shows<\/h4><p>Decided on the server per URL, so full-page caching stays correct.<\/p><p><strong>Pages<\/strong><\/p><p>Every page, Only the pages selected below, or Every page except the ones below.<\/p><p>The two fields underneath are read only when this is not \u201cEvery page\u201d.<\/p><p><strong>Pages list<\/strong><\/p><p>Static pages to include or exclude.<\/p><p><strong>URL patterns<\/strong><\/p><p>One path per line; * matches anything (e.g., \/collections\/*). Matched against the URL path, so shop, product and category URLs work here too.<\/p><p><strong>Also show on the cart page<\/strong><\/p><p>Off by default: the cart page already is a cart, and a second one competing with it is the most common complaint about floating carts.<\/p><p><strong>Also show on the checkout page<\/strong><\/p><p>Off by default: a floating button over the payment form costs conversions.<\/p><p><em>Note: these two switches decide the cart and checkout pages on their own. Listing those pages under \u201cOnly the pages selected below\u201d is not enough.<\/em><\/p><h4 id=\"conversion\">Conversion<\/h4><p>Extra sections inside the drawer that nudge shoppers toward a bigger, completed order.<\/p><p><strong>Free-shipping progress bar<\/strong><\/p><p>A bar that shows how much more the shopper needs to spend to earn free shipping.<\/p><p><strong>Threshold<\/strong><\/p><p>Read from my WooCommerce free-shipping method, or a fixed amount you set.&lt;br \/&gt;Auto stays correct even when you change your shipping rules \u2014 it reads the real minimum for the customer&#8217;s zone.<\/p><p><strong>Message before the goal<\/strong><\/p><p>Use {remaining} for the amount still to spend (e.g., \u201cSpend {remaining} more for free shipping!\u201d).<\/p><p><strong>Message once reached<\/strong><\/p><p>Shown when the cart passes the threshold (e.g., \u201cYou have unlocked free shipping!\u201d).<\/p><p><strong>Coupon field<\/strong><\/p><p>Let shoppers apply a discount code right in the drawer. Hidden behind a \u201cHave a coupon?\u201d link so it never distracts.<\/p><p><strong>Announcement bar<\/strong><\/p><p>A short line at the top of the drawer \u2014 shipping cut-offs, a returns promise, a running promo.<\/p><p><strong>Announcement text<\/strong><\/p><p>The line itself. Basic formatting and a link are allowed. The bar needs both the switch on and text here.<\/p><p><img decoding=\"async\" class=\"emoji\" role=\"img\" draggable=\"false\" src=\"https:\/\/s.w.org\/images\/core\/emoji\/17.0.2\/svg\/1f4a1.svg\" alt=\"\ud83d\udca1\" \/> The free-shipping bar hides itself when there is nothing to show: a cart that needs no shipping, or an automatic threshold your shipping zones do not define.<\/p><h3 id=\"reset-settings\">Reset settings<\/h3><p>The editor has a <strong>Reset settings<\/strong> section with a <strong>Reset to defaults<\/strong> button. It puts the template, texts, styles and every option back to how the plugin ships them. Your store data is untouched, and the name and Active status are kept.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1768536 elementor-widget elementor-widget-text-editor\" data-id=\"1768536\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h2>Frontend Result<\/h2>\n<p>The launcher shows the number of items in the cart. Clicking it slides the drawer in over a dark overlay.<\/p>\n<p>Inside, each line shows the product image, its name, the quantity \u00d7 unit price, the line total, a quantity stepper and a remove button. Free gifts and discounted lines added by other boosters carry their label and cannot be edited by hand. Removing a line shows an <strong>Undo<\/strong> toast for a few seconds.<\/p>\n<p>The footer adds the coupon field, the subtotal, the discount line when a coupon applies, your footer note, and the Checkout, View cart and Continue shopping controls.<\/p>\n<p>The drawer closes with the \u00d7 button, a click on the overlay, or the Escape key. It is a real dialog: focus moves into it, stays inside while it is open, and returns to the button that opened it.<\/p>\n<h2>Troubleshooting<\/h2>\n<p>If the floating cart isn&#8217;t displaying as expected, check the following:<\/p>\n<ul>\n<li>Confirm the <strong>Active<\/strong> switch in the Status section is on.<\/li>\n<li>Check <strong>Where it shows<\/strong> \u2014 the page may be outside the selected pages or URL patterns.<\/li>\n<li>On the cart or checkout page, verify the matching \u201cAlso show on\u2026\u201d option is enabled; they are off by default.<\/li>\n<li>If the launcher is missing on an empty cart, that is \u201cHide the launcher while the cart is empty\u201d doing its job \u2014 add a product to check.<\/li>\n<li>If the drawer does not open after an add to cart, check WooCommerce \u2192 Settings \u2192 Products for \u201cRedirect to the cart page after successful addition\u201d, which overrides that option.<\/li>\n<li>Temporarily disable caching and optimization plugins, then clear your site and browser cache.<\/li>\n<\/ul>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>The Floating Cart keeps the cart within reach on every page of your store \u2014 a round button in the corner with a live item count, and a slide-out drawer that shows what is in the cart right now. It works on any theme, with both the classic cart and the Cart and Checkout blocks. [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","template":"","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"footnotes":""},"doc_category":[20],"doc_tag":[],"class_list":["post-1310","docs","type-docs","status-publish","hentry","doc_category-boosters"],"aioseo_notices":[],"year_month":"2026-10","word_count":1611,"total_views":"123","reactions":{"happy":"0","normal":"0","sad":"0"},"author_info":{"name":"doc_sm","author_nicename":"doc_sm","author_url":"https:\/\/www.8theme.com\/documentation\/salesmax\/author\/doc_sm\/"},"doc_category_info":[{"term_name":"Boosters","term_url":"https:\/\/www.8theme.com\/documentation\/salesmax\/main\/boosters\/"}],"doc_tag_info":[],"knowledge_base_info":[],"knowledge_base_slug":[],"_links":{"self":[{"href":"https:\/\/www.8theme.com\/documentation\/salesmax\/wp-json\/wp\/v2\/docs\/1310","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.8theme.com\/documentation\/salesmax\/wp-json\/wp\/v2\/docs"}],"about":[{"href":"https:\/\/www.8theme.com\/documentation\/salesmax\/wp-json\/wp\/v2\/types\/docs"}],"author":[{"embeddable":true,"href":"https:\/\/www.8theme.com\/documentation\/salesmax\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.8theme.com\/documentation\/salesmax\/wp-json\/wp\/v2\/comments?post=1310"}],"version-history":[{"count":8,"href":"https:\/\/www.8theme.com\/documentation\/salesmax\/wp-json\/wp\/v2\/docs\/1310\/revisions"}],"predecessor-version":[{"id":1323,"href":"https:\/\/www.8theme.com\/documentation\/salesmax\/wp-json\/wp\/v2\/docs\/1310\/revisions\/1323"}],"wp:attachment":[{"href":"https:\/\/www.8theme.com\/documentation\/salesmax\/wp-json\/wp\/v2\/media?parent=1310"}],"wp:term":[{"taxonomy":"doc_category","embeddable":true,"href":"https:\/\/www.8theme.com\/documentation\/salesmax\/wp-json\/wp\/v2\/doc_category?post=1310"},{"taxonomy":"doc_tag","embeddable":true,"href":"https:\/\/www.8theme.com\/documentation\/salesmax\/wp-json\/wp\/v2\/doc_tag?post=1310"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}