{"id":160838,"date":"2022-08-03T06:14:35","date_gmt":"2022-08-03T06:14:35","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/offcanvas-block\/"},"modified":"2026-09-03T06:47:48","modified_gmt":"2026-09-03T06:47:48","slug":"offcanvas-block","status":"publish","type":"plugin","link":"https:\/\/bn-in.wordpress.org\/plugins\/offcanvas-block\/","author":22028296,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"2.0.7","stable_tag":"2.0.7","tested":"7.1","requires":"6.5","requires_php":"7.4","requires_plugins":null,"header_name":"OffCanvas Block","header_author":"bPlugins","header_description":"Display content box from the left, right, or bottom edge of the viewport.","assets_banners_color":"ecedfe","last_updated":"2026-09-03 06:47:48","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/www.buymeacoffee.com\/abuhayat","header_plugin_uri":"","header_author_uri":"http:\/\/bplugins.com","rating":5,"author_block_rating":4.462962962963,"active_installs":900,"downloads":14402,"num_ratings":1,"support_threads":0,"support_threads_resolved":0,"author_block_count":50,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"charlescormier","date":"2024-09-12 06:58:16","revision":3150494},"1.0.1":{"tag":"1.0.1","author":"asadsuzan","date":"2025-11-18 09:49:32","revision":3397905},"2.0.0":{"tag":"2.0.0","author":"asadsuzan","date":"2026-01-28 10:40:56","revision":3448598},"2.0.1":{"tag":"2.0.1","author":"asadsuzan","date":"2026-02-09 06:48:18","revision":3456789},"2.0.2":{"tag":"2.0.2","author":"asadsuzan","date":"2026-02-17 07:20:29","revision":3463163},"2.0.3":{"tag":"2.0.3","author":"asadsuzan","date":"2026-03-30 04:55:03","revision":3494208},"2.0.4":{"tag":"2.0.4","author":"asadsuzan","date":"2026-06-02 06:17:02","revision":3557508},"2.0.5":{"tag":"2.0.5","author":"bplugins","date":"2026-07-26 11:37:07","revision":3623309},"2.0.6":{"tag":"2.0.6","author":"asadsuzan","date":"2026-09-03 03:41:35","revision":3678910},"2.0.7":{"tag":"2.0.7","author":"asadsuzan","date":"2026-09-03 06:47:48","revision":3679135}},"upgrade_notice":{"2.0.6":"<p>Track conversions with our new Analytics Dashboard, customize separate exit animation styles with Independent Close Animations, and target your campaigns precisely with Page, User Role, and Timezone-based Targeting Rules.<\/p>","2.0.1":"<p>Improved trigger button experience with ripple effect, adds custom close icon and position options, and extends popup header background and title controls.<\/p>","2.0.0":"<ul>\n<li>Major Upgrade: New interaction system, smart triggers, design controls, and improved UI\/UX.<\/li>\n<\/ul>","1.0.0":"<ul>\n<li>Initial Release.<\/li>\n<\/ul>"},"ratings":{"1":0,"2":0,"3":0,"4":0,"5":1},"assets_icons":{"icon-128x128-old.png":{"filename":"icon-128x128-old.png","revision":3623309,"resolution":"128x128","location":"assets","locale":"old","width":129,"height":128},"icon-128x128.png":{"filename":"icon-128x128.png","revision":3623309,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3623309,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256},"icon.svg":{"filename":"icon.svg","revision":3623309,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3623309,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3623309,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{"blueprint.json":{"filename":"blueprint.json","revision":3679135,"resolution":false,"location":"assets","locale":"","contents":"{\"landingPage\":\"\\\/wp-admin\\\/post-new.php?post_type=offcanvas-block\",\"preferredVersions\":{\"php\":\"8.2\",\"wp\":\"latest\"},\"phpExtensionBundles\":[\"kitchen-sink\"],\"steps\":[{\"step\":\"login\",\"username\":\"admin\",\"password\":\"password\"},{\"step\":\"wp-cli\",\"command\":\"wp eval '$content = base64_decode(\\\"aGVsbG8gd29ybGQ=\\\"); $post_data = array(\\\"post_title\\\" => \\\"Home\\\", \\\"post_content\\\" => $content, \\\"post_status\\\" => \\\"publish\\\", \\\"post_type\\\" => \\\"page\\\"); $post_id = wp_insert_post($post_data); if (is_wp_error($post_id)) { echo \\\"Error: \\\" . $post_id->get_error_message(); } else { echo \\\"Created page ID: \\\" . $post_id; }'\"},{\"step\":\"wp-cli\",\"command\":\"wp post create --post_type=page --post_status=publish --post_title=\\\"Home\\\" --post_content=\\\"\\\" --porcelain\"},{\"step\":\"setSiteOptions\",\"options\":{\"show_on_front\":\"page\",\"page_on_front\":3}},{\"step\":\"wp-cli\",\"command\":\"wp post create --post_type=page --post_status=publish --post_title=\\\"Blog\\\" --post_content=\\\"\\\" --porcelain\"},{\"step\":\"setSiteOptions\",\"options\":{\"page_for_posts\":3}},{\"step\":\"wp-cli\",\"command\":\"wp post create --post_type=page --post_status=publish --post_title=\\\"Blog\\\" --post_content=\\\"\\\" --porcelain\"},{\"step\":\"setSiteOptions\",\"options\":{\"page_for_posts\":3}},{\"step\":\"installPlugin\",\"pluginData\":{\"resource\":\"wordpress.org\\\/plugins\",\"slug\":\"offcanvas-block\"},\"options\":{\"activate\":true}}]}"}},"all_blocks":{"ocb\/offcanvas":{"apiVersion":2,"name":"ocb\/offcanvas","title":"OffCanvas","version":"2.0.7","description":"Display content box from the left, right, or bottom edge of the viewport","category":"widgets","keywords":["model","popup","sidebar"],"textdomain":"offcanvas","usesContext":["postId","postType","queryId"],"attributes":{"align":{"type":"string","default":""},"cId":{"type":"string","default":""},"label":{"type":"string","default":""},"proTemplate":{"type":"string","default":""},"position":{"type":"string","default":"start"},"btnText":{"type":"string","default":"OffCanvas"},"btnAlign":{"type":"string","default":"center"},"btnTypo":{"type":"object","default":{"fontSize":{"desktop":15,"tablet":15,"mobile":15},"fontWeight":600}},"btnColors":{"type":"object","default":{"color":"#fff","bg":"#4527a4"}},"popupBG":{"type":"object","default":{"color":"#fff"}},"title":{"type":"string","default":"OffCanvas"},"titleTypo":{"type":"object","default":{"fontSize":{"desktop":18,"tablet":17,"mobile":16},"fontWeight":500}},"titleColor":{"type":"string","default":"#333"},"headerBg":{"type":"object","default":{"color":"#0000"}},"closeBtnColor":{"type":"string","default":"#555"},"closeBtnIcon":{"type":"string","default":""},"offCanvasSettings":{"type":"object","default":{"options":{"backdrop":false,"closeOnClickOutside":false,"toggleShow":false,"scrollable":true,"isTriggerOnCustomSelector":false,"isShowDefaultTrigger":false,"animation":"default","duration":400,"easing":"ease","slideDirection":"left","mobileSlideDirection":"","isShowButtonIcon":false,"isFAB":false,"enableCookieConsent":false,"header":{"isShow":true,"titlePosition":"start"},"enableSwipeGestures":false,"mobilePosition":"","smartTrigger":{"enabled":false,"enableDeviceSpecific":false,"type":"","mobileType":"","value":"5","targetSelector":"","mobileTargetSelector":"","frequency":"session","mobileFrequency":"session","delay":"1","mobileDelay":"1","scrollDepth":"50","mobileScrollDepth":"50","inactivityPeriod":"1","mobileInactivityPeriod":"1"}},"triggerSelector":"","showBtn":{"icon":"<svg  viewBox='0 0 16 16' xmlns='http:\/\/www.w3.org\/2000\/svg'><path fill-rule='evenodd' d='M10.146 4.646a.5.5 0 01.708 0l3 3a.5.5 0 010 .708l-3 3a.5.5 0 01-.708-.708L12.793 8l-2.647-2.646a.5.5 0 010-.708z' clip-rule='evenodd'><\/path><path fill-rule='evenodd' d='M2 8a.5.5 0 01.5-.5H13a.5.5 0 010 1H2.5A.5.5 0 012 8z' clip-rule='evenodd'><\/path><\/svg>","position":"right"}}},"offCanvasStyles":{"type":"object","default":{"popupArea":{"horizontalWidth":{"desktop":"100%","tablet":"100%","mobile":"100%"},"verticalWidth":{"desktop":"350px","tablet":"350px","mobile":"350px"},"horizontalHeight":{"desktop":"30vh","tablet":"30vh","mobile":"30vh"},"verticalHeight":{"desktop":"100vh","tablet":"100vh","mobile":"100vh"},"shadow":[{"hOffset":"0px","vOffset":"0px","blur":"0px","spread":"0px","color":"rgba(0, 0, 0, 0.16)","isInset":false}],"zIndex":99999},"showBtn":{"hoverColors":{"color":"","bg":""},"padding":{"desktop":{"top":"8px","right":"20px","bottom":"8px","left":"20px"},"tablet":{"top":"8px","right":"20px","bottom":"8px","left":"20px"},"mobile":{"top":"8px","right":"20px","bottom":"8px","left":"20px"}},"margin":{"desktop":{"top":"0px","right":"0px","bottom":"0px","left":"0px"},"tablet":{"top":"0px","right":"0px","bottom":"0px","left":"0px"},"mobile":{"top":"0px","right":"0px","bottom":"0px","left":"0px"}},"border":{"color":"","style":"","width":""},"borderRadius":{"top":"3px","right":"3px","bottom":"3px","left":"3px"},"shadow":[{"hOffset":"","vOffset":"","blur":"","spread":"","color":"","isInset":false}],"hoverShadow":[{"hOffset":"","vOffset":"","blur":"","spread":"","color":"","isInset":false}],"icon":{"size":16,"color":"#fff","hoverColor":""}},"backdrop":{"bg":{"color":"rgba(0, 0, 0)"},"opacity":0.1,"blur":0,"zIndex":99998},"closeBtn":{"bg":"#0000","size":16,"position":"top-right","shadow":[{"hOffset":"0px","vOffset":"0px","blur":"0px","spread":"0px","color":"rgba(0, 0, 0, 0.16)","isInset":false}]},"fab":{"position":"bottom-right","size":56,"offsetX":"30px","offsetY":"30px","customX":"30px","customY":"30px","borderRadius":50,"bg":"#4527a4","color":"#fff","hoverBg":"#5c3dbd","hoverColor":"#fff","icon":"<svg viewBox='0 0 16 16' xmlns='http:\/\/www.w3.org\/2000\/svg'><path fill-rule='evenodd' d='M10.146 4.646a.5.5 0 01.708 0l3 3a.5.5 0 010 .708l-3 3a.5.5 0 01-.708-.708L12.793 8l-2.647-2.646a.5.5 0 010-.708z' clip-rule='evenodd'><\/path><path fill-rule='evenodd' d='M2 8a.5.5 0 01.5-.5H13a.5.5 0 010 1H2.5A.5.5 0 012 8z' clip-rule='evenodd'><\/path><\/svg>","label":"save 90%","shadow":[{"hOffset":"0px","vOffset":"4px","blur":"10px","spread":"0px","color":"rgba(0, 0, 0, 0.3)","isInset":false}],"hoverShadow":[{"hOffset":"0px","vOffset":"6px","blur":"12px","spread":"0px","color":"rgba(0, 0, 0, 0.4)","isInset":false}],"iconSize":24,"border":{"color":"#0000","style":"solid","width":"0px"},"isFloating":true,"isPulse":true,"isRipple":true,"rotation":270,"zIndex":9999}}},"targetingRules":{"type":"object","default":{"enabled":false,"showOn":"all","specificPages":[],"specificPosts":[],"hideOn":"none","hideSpecificPages":[],"hideSpecificPosts":[],"startDate":"","endDate":"","timezone":"","userRole":"all"}}},"supports":{"align":["wide","full"],"html":false},"example":{"attributes":{"preview":true,"columns":{"desktop":1,"tablet":1,"mobile":1}}},"editorScript":["file:.\/index.js","wp-api","wp-util"],"editorStyle":"file:.\/index.css","style":"file:.\/view.css","render":"file:.\/render.php","viewScript":"file:.\/view.js"}},"tagged_versions":["1.0.0","1.0.1","2.0.0","2.0.1","2.0.2","2.0.3","2.0.4","2.0.5","2.0.6","2.0.7"],"block_files":["\/tags\/2.0.7\/build\/index.js","\/tags\/2.0.7\/build\/index.css","\/tags\/2.0.7\/build\/view.css"],"assets_screenshots":{"screenshot-1.gif":{"filename":"screenshot-1.gif","revision":3396999,"resolution":"1","location":"assets","locale":"","width":1152,"height":524},"screenshot-2.gif":{"filename":"screenshot-2.gif","revision":3396999,"resolution":"2","location":"assets","locale":"","width":1150,"height":532},"screenshot-3.gif":{"filename":"screenshot-3.gif","revision":3396999,"resolution":"3","location":"assets","locale":"","width":1152,"height":541},"screenshot-4.gif":{"filename":"screenshot-4.gif","revision":3396999,"resolution":"4","location":"assets","locale":"","width":1150,"height":526},"screenshot-5.gif":{"filename":"screenshot-5.gif","revision":3396999,"resolution":"5","location":"assets","locale":"","width":1152,"height":537},"screenshot-6.gif":{"filename":"screenshot-6.gif","revision":3396999,"resolution":"6","location":"assets","locale":"","width":1150,"height":532},"screenshot-7.gif":{"filename":"screenshot-7.gif","revision":3396999,"resolution":"7","location":"assets","locale":"","width":1150,"height":538},"screenshot-8.gif":{"filename":"screenshot-8.gif","revision":3396999,"resolution":"8","location":"assets","locale":"","width":1150,"height":532}},"screenshots":{"1":"Default OffCanvas drawer displaying inner Gutenberg blocks.","2":"Responsive position configurations (Left, Right, Top, Bottom).","3":"Custom Trigger Selector settings for binding external CSS classes\/IDs.","4":"Smart Auto Trigger: Target Section in View.","5":"Smart Auto Trigger: Scroll Depth Trigger.","6":"Smart Auto Trigger: Exit Intent Detection.","7":"Smart Auto Trigger: Time-based Delay Trigger.","8":"Smart Auto Trigger: User Inactivity Trigger.","9":"Dedicated Analytics Dashboard showing impressions, conversions, and conversion rates.","10":"Advanced Targeting Rules configuration settings."}},"plugin_section":[172757],"plugin_tags":[1220,206448,183144,491,177447],"plugin_category":[43],"plugin_contributors":[183994,250641,226291,78154],"plugin_business_model":[],"class_list":["post-160838","plugin","type-plugin","status-publish","hentry","plugin_section-block","plugin_tags-block","plugin_tags-drawer","plugin_tags-offcanvas","plugin_tags-popup","plugin_tags-slide-menu","plugin_category-customization","plugin_contributors-abuhayat","plugin_contributors-asadsuzan","plugin_contributors-bplugins","plugin_contributors-freemius","plugin_committers-abuhayat","plugin_committers-asadsuzan","plugin_committers-bplugins","plugin_support_reps-asadsuzan"],"banners":{"banner":"https:\/\/ps.w.org\/offcanvas-block\/assets\/banner-772x250.png?rev=3623309","banner_2x":"https:\/\/ps.w.org\/offcanvas-block\/assets\/banner-1544x500.png?rev=3623309","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/offcanvas-block\/assets\/icon.svg?rev=3623309","icon":"https:\/\/ps.w.org\/offcanvas-block\/assets\/icon.svg?rev=3623309","icon_2x":false,"generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/offcanvas-block\/assets\/screenshot-1.gif?rev=3396999","caption":"Default OffCanvas drawer displaying inner Gutenberg blocks."},{"src":"https:\/\/ps.w.org\/offcanvas-block\/assets\/screenshot-2.gif?rev=3396999","caption":"Responsive position configurations (Left, Right, Top, Bottom)."},{"src":"https:\/\/ps.w.org\/offcanvas-block\/assets\/screenshot-3.gif?rev=3396999","caption":"Custom Trigger Selector settings for binding external CSS classes\/IDs."},{"src":"https:\/\/ps.w.org\/offcanvas-block\/assets\/screenshot-4.gif?rev=3396999","caption":"Smart Auto Trigger: Target Section in View."},{"src":"https:\/\/ps.w.org\/offcanvas-block\/assets\/screenshot-5.gif?rev=3396999","caption":"Smart Auto Trigger: Scroll Depth Trigger."},{"src":"https:\/\/ps.w.org\/offcanvas-block\/assets\/screenshot-6.gif?rev=3396999","caption":"Smart Auto Trigger: Exit Intent Detection."},{"src":"https:\/\/ps.w.org\/offcanvas-block\/assets\/screenshot-7.gif?rev=3396999","caption":"Smart Auto Trigger: Time-based Delay Trigger."},{"src":"https:\/\/ps.w.org\/offcanvas-block\/assets\/screenshot-8.gif?rev=3396999","caption":"Smart Auto Trigger: User Inactivity Trigger."}],"raw_content":"<!--section=description-->\n<p><a href=\"https:\/\/bplugins.com\/products\/offcanvas-block\/\"><strong>OffCanvas<\/strong><\/a> | <a href=\"https:\/\/bplugins.com\/products\/offcanvas-block\/pricing\"><strong>Pricing<\/strong><\/a> | <a href=\"https:\/\/bplugins.com\/support\/\"><strong>Support<\/strong><\/a> | <a href=\"https:\/\/bplugins.com\/products\/offcanvas-block\/#demos\"><strong>Demo<\/strong><\/a><\/p>\n\n<p>Create high-converting popups, slide-in panels, and responsive navigation drawers inside the WordPress block editor (Gutenberg) with ease.<\/p>\n\n<p>OffCanvas \/ Drawer is a lightweight, performance-optimized <strong>WordPress popup plugin<\/strong> and <strong>Gutenberg popup<\/strong> builder. It allows you to design custom <strong>OffCanvas menus<\/strong>, <strong>drawer menus<\/strong>, side panels, and interactive popups that slide in or fade in from any viewport direction: left, right, top, or bottom.<\/p>\n\n<p>Whether you need a sleek <strong>mobile menu<\/strong>, a <strong>WooCommerce cart drawer<\/strong>, an <strong>exit intent popup<\/strong> to recover abandoned carts, custom slide-out contact forms, site announcements, or an interactive help desk\u2014this plugin does it all without requiring you to write a single line of code.<\/p>\n\n<h3>Built Natively for Gutenberg (Block Editor)<\/h3>\n\n<p>Designed specifically for the block editor, it supports full InnerBlocks integration. You can drop any Gutenberg block (paragraphs, images, headings, contact forms, navigation blocks, or custom widgets) directly inside the <strong>slide-in panel<\/strong>. It also features a built-in shortcode generator, allowing you to save layouts as templates and embed them anywhere on your website using a simple shortcode.<\/p>\n\n<h3>Smart Behavior, Triggers &amp; Targeting<\/h3>\n\n<p>Go beyond basic popups. Trigger drawers based on visitor actions like scroll depth, time delay, user inactivity, element visibility, or exit intent. With advanced targeting rules, you can display or hide popups on specific pages, target specific user roles, and schedule marketing campaigns with timezone-aware start and end dates.<\/p>\n\n<h3>Dedicated Analytics Dashboard<\/h3>\n\n<p>Track how your <strong>floating popups<\/strong> and <strong>slide menus<\/strong> perform. The built-in Analytics dashboard measures impressions, conversions, and conversion rates, giving you the insights you need to optimize your layout and strategy.<\/p>\n\n<h3>Silky-Smooth Animations &amp; Device Optimization<\/h3>\n\n<p>Provide a premium user experience with responsive positioning (e.g., a slide-in side panel on desktop, and a mobile bottom sheet on phones), touch\/swipe gesture controls, and independent opening and closing transition effects. Add a modern backdrop blur filter to keep your content in focus.<\/p>\n\n<p>The plugin is fully responsive, SEO-friendly, exceptionally lightweight, and built to integrate seamlessly with any WordPress theme.<\/p>\n\n<h3>Key Features<\/h3>\n\n<ul>\n<li><strong>Native Gutenberg Block<\/strong>: Design your slide-in panels visually inside the WordPress Block Editor with live preview.<\/li>\n<li><strong>InnerBlocks Integration<\/strong>: Place any block inside the drawer, including forms, navigation, WooCommerce blocks, and custom shortcodes.<\/li>\n<li><strong>Shortcode Generator<\/strong>: Save and reuse OffCanvas designs globally using a clean shortcode manager.<\/li>\n<li><strong>Advanced Smart Triggers<\/strong>: Open panels automatically based on exit-intent, scroll depth, time delay, element visibility, or user inactivity.<\/li>\n<li><strong>Advanced Targeting &amp; Scheduling<\/strong>: Show or hide popups on specific pages, target user roles, and schedule campaigns with timezone support.<\/li>\n<li><strong>Built-in Analytics<\/strong>: Monitor impressions, conversions, and conversion rates with a dedicated, beautiful dashboard.<\/li>\n<li><strong>Independent Close Animations<\/strong>: Customize exit transition animation types, easing, and duration separate from opening transitions.<\/li>\n<li><strong>Responsive Layouts &amp; Mobile Gestures<\/strong>: Set device-specific positions (e.g., mobile bottom sheets) and support smooth touch swipe gestures.<\/li>\n<li><strong>Floating Action Button (FAB)<\/strong>: Custom trigger buttons that anchor to screen corners with drag-and-drop builder positioning.<\/li>\n<li><strong>Aesthetic Backdrop Filters<\/strong>: Style the background overlay with custom colors, opacity levels, and modern backdrop blur effects.<\/li>\n<\/ul>\n\n<h3>Free Features<\/h3>\n\n<h4>Layout &amp; Positioning<\/h4>\n\n<ul>\n<li><strong>Four-Direction Placements<\/strong>: Set the slide-in drawer to slide from the Left, Right, Top, or Bottom edge of the screen.<\/li>\n<li><strong>Default Trigger Button<\/strong>: Toggle the drawer panel open or closed with a customizable inline button.<\/li>\n<li><strong>Body Scroll Lock<\/strong>: Prevent background body scrolling when the OffCanvas panel is active to improve readability.<\/li>\n<li><strong>Standard Backdrop Overlay<\/strong>: Enable a dark overlay backdrop behind the active panel to draw focus to content.<\/li>\n<\/ul>\n\n<h4>Trigger Button Customization<\/h4>\n\n<ul>\n<li><strong>Block Alignment<\/strong>: Align the trigger button to the Left, Center, or Right within your page layout.<\/li>\n<li><strong>Typography Controls<\/strong>: Adjust the font size, font family, and font weight of the button text.<\/li>\n<li><strong>Color Customization<\/strong>: Full control over trigger button text and background colors (normal and hover states).<\/li>\n<li><strong>Ripple Click Effect<\/strong>: Add an optional modern material ripple animation on click.<\/li>\n<li><strong>Margin Controls<\/strong>: Fine-tune trigger button outer margins for perfect page alignment.<\/li>\n<\/ul>\n\n<h4>Close Button Customization<\/h4>\n\n<ul>\n<li><strong>Flexible Styling<\/strong>: Pick custom colors and backgrounds for the close icon to fit your branding.<\/li>\n<li><strong>Size &amp; Shadow<\/strong>: Adjust the close button scale (in pixels) and box shadow.<\/li>\n<li><strong>Predefined Placements<\/strong>: Anchor the close button to the Top-Right, Top-Left, Bottom-Right, or Bottom-Left corners.<\/li>\n<\/ul>\n\n<h4>Header &amp; Typography Styling<\/h4>\n\n<ul>\n<li><strong>Editable Drawer Header<\/strong>: Customize the text of the header title to greet or direct visitors.<\/li>\n<li><strong>Title Styling<\/strong>: Control header typography (font size, font weight) and text colors.<\/li>\n<li><strong>Header Spacing &amp; Background<\/strong>: Customize header background color, padding, and visibility options.<\/li>\n<\/ul>\n\n<h4>Templates &amp; Shortcode Generator<\/h4>\n\n<ul>\n<li><strong>Dedicated Shortcode Builder<\/strong>: Create drawers, save them as global templates, and copy the shortcode <code>[offcanvas-block id=\"...\"]<\/code> from the dashboard list.<\/li>\n<li><strong>InnerBlocks Compatibility<\/strong>: Drop native Gutenberg blocks, WooCommerce widgets, or contact forms into the drawer content.<\/li>\n<\/ul>\n\n<h3>Pro Features<\/h3>\n\n<p>Upgrade to OffCanvas Pro to unlock advanced targeting, styling, and behavior controls to build professional marketing campaigns:<\/p>\n\n<h4>Analytics &amp; Performance Tracking<\/h4>\n\n<ul>\n<li><strong>Dedicated Analytics Dashboard<\/strong>: Monitor impressions, conversions, and conversion rates directly in WordPress.<\/li>\n<li><strong>Per-Drawer Identity<\/strong>: Give each OffCanvas its own Analytics Label so several drawers on the same page stay easy to tell apart.<\/li>\n<li><strong>Impression Tracking<\/strong>: Keep track of how many times each slide-in panel or popup is viewed.<\/li>\n<li><strong>Conversion Rate Measurement<\/strong>: Understand which drawers convert best with automatic conversion rate calculation.<\/li>\n<li><strong>Date Ranges &amp; Trends<\/strong>: Compare any period against the one before it, with daily, weekly, or monthly charts and an activity heatmap.<\/li>\n<li><strong>Export &amp; Data Management<\/strong>: Download a CSV report, or delete analytics data for one drawer or all of them, without touching the drawers themselves.<\/li>\n<\/ul>\n\n<h4>Advanced Targeting &amp; Scheduling<\/h4>\n\n<ul>\n<li><strong>Page-Level Targeting<\/strong>: Show or hide popups on specific pages, posts, or custom post types.<\/li>\n<li><strong>User Role Targeting<\/strong>: Display targeted drawers only to logged-in users, administrators, authors, editors, customers, or guests.<\/li>\n<li><strong>Campaign Scheduling<\/strong>: Schedule campaign popups to automatically start and end at specific dates and times.<\/li>\n<li><strong>Timezone Support<\/strong>: Set schedules based on your WordPress site's timezone or UTC for accurate global campaigns.<\/li>\n<\/ul>\n\n<h4>Smart Auto Triggers<\/h4>\n\n<ul>\n<li><strong>Exit Intent Detection<\/strong>: Trigger the slide-in drawer automatically when the user's cursor moves to leave the viewport on desktop.<\/li>\n<li><strong>After Time Delay<\/strong>: Open the panel automatically after a configurable delay (in seconds or minutes).<\/li>\n<li><strong>Scroll Depth Trigger<\/strong>: Open the panel when a visitor scrolls down a specific percentage (e.g., 50%) of your page.<\/li>\n<li><strong>Target Section in View<\/strong>: Open the drawer automatically when a specific CSS selector (Class or ID) scrolls into the viewport.<\/li>\n<li><strong>On Inactivity<\/strong>: Display the popup after a period of user inactivity to re-engage visitors.<\/li>\n<li><strong>Trigger Frequency Controls<\/strong>: Limit popup visibility (Always, Once per session, Once per day) using sessionStorage and localStorage to prevent visitor fatigue.<\/li>\n<\/ul>\n\n<h4>Floating Action Button (FAB) Trigger<\/h4>\n\n<ul>\n<li><strong>Corner Anchor Placements<\/strong>: Place the trigger as a Floating Action Button in the Bottom-Right, Bottom-Left, Top-Right, or Top-Left corners.<\/li>\n<li><strong>Custom Absolute Positioning<\/strong>: Position the FAB anywhere on the screen with drag-and-drop editor control. Features a smart 8px Euclidean threshold to prevent accidental shifts.<\/li>\n<li><strong>Offset &amp; Layout Controls<\/strong>: Adjust X and Y offset values to ensure perfect alignments with other screen elements.<\/li>\n<li><strong>Visual Effects<\/strong>: Set button size, icon size, border radius, pulse animations, custom shadows, and hover transitions.<\/li>\n<li><strong>Rotation Angle<\/strong>: Rotate the FAB to match vertical triggers or layout designs.<\/li>\n<\/ul>\n\n<h4>Animations &amp; Transition Controls<\/h4>\n\n<ul>\n<li><strong>Premium Transition Types<\/strong>: Slide, Fade, Push, Reveal, Zoom, Flip, and Bounce effects.<\/li>\n<li><strong>Push<\/strong>: Displaces the page by the panel's own size while the panel travels in alongside it, so the page and panel move together.<\/li>\n<li><strong>Configurable Opening Transitions<\/strong>: Set entry duration times in milliseconds (100ms - 5000ms) and select easing presets (ease, ease-in, ease-out, ease-in-out, linear).<\/li>\n<li><strong>Independent Close Animations<\/strong>: Customize exit transitions with a separate exit animation type, duration, and easing, or choose to reuse the opening animation.<\/li>\n<\/ul>\n\n<h4>Mobile &amp; Touch Optimizations<\/h4>\n\n<ul>\n<li><strong>Mobile-Specific Placement<\/strong>: Override the panel position specifically for mobile devices (e.g., Slide-in Right on desktop, Bottom Sheet on mobile).<\/li>\n<li><strong>Mobile Slide Direction<\/strong>: Customize slide-in directions specifically for mobile visitors.<\/li>\n<li><strong>Touch &amp; Swipe Gestures<\/strong>: Smooth, native-feeling swipe-to-open and swipe-to-close controls on touch devices.<\/li>\n<\/ul>\n\n<h4>Premium Design &amp; Backdrop Blur<\/h4>\n\n<ul>\n<li><strong>Responsive Dimensions<\/strong>: Customize the panel width and height independently for Desktop, Tablet, and Mobile screens.<\/li>\n<li><strong>Layered Backdrop Material<\/strong>: A saturated blur pane, your own tint colour, and a soft depth wash that clears toward the panel \u2014 depth and focus rather than a flat dark overlay, with custom overlay colours, opacity and blur (0px - 30px).<\/li>\n<li><strong>Custom Close Button Icon<\/strong>: Upload or input any custom SVG string to replace the default close button icon.<\/li>\n<li><strong>Borders &amp; Hover Shadows<\/strong>: Add custom borders, border radius, and hover state box-shadows on trigger buttons.<\/li>\n<\/ul>\n\n<h4>External Custom Trigger<\/h4>\n\n<ul>\n<li><strong>Custom Selectors<\/strong>: Bind the OffCanvas drawer to any custom link, menu item, or button by inputting its Class or ID (e.g., <code>.my-custom-button<\/code> or <code>#open-drawer-link<\/code>).<\/li>\n<li><strong>Query Loop Ready<\/strong>: Repeat the drawer for every post in a Query Loop and each card opens its own panel, with Post Title, Excerpt, Featured Image, or custom fields inside the panel showing that card's post.<\/li>\n<li><strong>Hide Default Trigger<\/strong>: Keep the built-in trigger button hidden when using custom CSS selectors to trigger the panel.<\/li>\n<\/ul>\n\n<!--section=installation-->\n<h4>From the WordPress Dashboard<\/h4>\n\n<ol>\n<li>Navigate to <strong>Plugins \u2192 Add New<\/strong>.<\/li>\n<li>Search for <strong>OffCanvas Block<\/strong>.<\/li>\n<li>Click <strong>Install Now<\/strong> and then <strong>Activate<\/strong>.<\/li>\n<\/ol>\n\n<h4>Manual Installation<\/h4>\n\n<ol>\n<li>Download the plugin ZIP file from the WordPress Plugin Directory.<\/li>\n<li>Log in to your WordPress admin dashboard and go to <strong>Plugins \u2192 Add New \u2192 Upload Plugin<\/strong>.<\/li>\n<li>Choose the ZIP file, upload, and click <strong>Activate<\/strong>.<\/li>\n<\/ol>\n\n<h4>Adding the Block<\/h4>\n\n<ol>\n<li>Open the Gutenberg editor on any page, post, or template.<\/li>\n<li>Click the <strong>+<\/strong> icon (Add Block) and search for <strong>OffCanvas<\/strong>.<\/li>\n<li>Click to insert it, configure settings in the inspector sidebar, and populate the content area with Gutenberg blocks.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20block%20work%20with%20full%20site%20editing%20%28fse%29%3F\"><h3>Does this block work with Full Site Editing (FSE)?<\/h3><\/dt>\n<dd><p>Yes! OffCanvas Block is fully compatible with block-based themes and FSE templates, headers, footers, and page layouts.<\/p><\/dd>\n<dt id=\"can%20i%20use%20the%20offcanvas%20drawer%20as%20a%20woocommerce%20mini-cart%3F\"><h3>Can I use the OffCanvas drawer as a WooCommerce mini-cart?<\/h3><\/dt>\n<dd><p>Yes. You can insert the WooCommerce Cart block (or any cart block\/shortcode) inside the OffCanvas content area and use the CPT shortcode to trigger it from your main menu cart button.<\/p><\/dd>\n<dt id=\"how%20do%20i%20open%20the%20offcanvas%20panel%20from%20a%20theme%20navigation%20menu%20link%3F\"><h3>How do I open the OffCanvas panel from a theme navigation menu link?<\/h3><\/dt>\n<dd><p>In the Pro version, you can assign a custom class (e.g., <code>open-my-drawer<\/code>) to your navigation menu item in WordPress, and enter that selector (<code>.open-my-drawer<\/code>) in the <strong>Custom Trigger Selector<\/strong> setting.<\/p><\/dd>\n<dt id=\"can%20i%20use%20offcanvas%20inside%20a%20query%20loop%2C%20with%20different%20content%20for%20each%20post%3F\"><h3>Can I use OffCanvas inside a Query Loop, with different content for each post?<\/h3><\/dt>\n<dd><p>Yes. Place the OffCanvas block inside the Query Loop's Post Template, next to the \"More details\" button of your card, and give every card's button the same class (e.g., <code>more-details<\/code>) in the <strong>Custom Trigger Selector<\/strong> setting. Each card opens its own panel, and any dynamic block you put inside the panel \u2014 Post Title, Excerpt, Featured Image, Post Content, or a custom field \u2014 shows the content of that card's post. This is the recommended way to build resource pages, directories, and product listings with per-item detail panels.<\/p><\/dd>\n<dt id=\"can%20i%20limit%20how%20often%20the%20popup%20triggers%20appear%20to%20a%20single%20user%3F\"><h3>Can I limit how often the popup triggers appear to a single user?<\/h3><\/dt>\n<dd><p>Yes. The Pro version includes a Smart Trigger Frequency control, allowing you to limit trigger appearances to \"Once per session\" or \"Once per day\" utilizing local storage and session storage.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20i%20have%20multiple%20offcanvas%20blocks%20on%20the%20same%20page%3F\"><h3>What happens if I have multiple OffCanvas blocks on the same page?<\/h3><\/dt>\n<dd><p>The plugin handles multiple instances perfectly. Each block generates its own unique wrapper class and isolated trigger events. In version 2.0.4+, smart triggers also use block-specific storage keys to prevent collisions.<\/p><\/dd>\n<dt id=\"can%20i%20schedule%20popups%20for%20specific%20campaigns%3F\"><h3>Can I schedule popups for specific campaigns?<\/h3><\/dt>\n<dd><p>Yes! In the Pro version, you can set a start and end date\/time for your campaigns with timezone-aware scheduling, making it perfect for limited-time promotions, holiday sales, and announcements.<\/p><\/dd>\n<dt id=\"how%20does%20the%20analytics%20dashboard%20work%3F\"><h3>How does the Analytics dashboard work?<\/h3><\/dt>\n<dd><p>In the Pro version, the plugin includes a lightweight Analytics system that tracks impressions, conversions, and conversion rates. A conversion is recorded whenever the user triggers a conversion action inside the panel. This data is displayed in a clean dashboard within your WordPress admin panel.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>2.0.7 (August 23, 2026)<\/h4>\n\n<ul>\n<li>New: Added a Template Library \u2014 a Templates button in the block toolbar opens a gallery of ready-made drawer designs for navigation, newsletter signup, contact, shopping cart, quick view, appointment booking, lead capture, table of contents, article sharing, support, and promotions.<\/li>\n<li>New: Importing a template fills the drawer with fully editable blocks and applies its matching position, title, animation, and panel width in one step, leaving all your other drawer settings untouched.<\/li>\n<li>New: Added search, category filters, Free\/Pro badges, and favorites to the Template Library so you can find and revisit designs quickly.<\/li>\n<li>New: Query Loop support. Repeat one OffCanvas block for every post in a Query Loop and each card now opens its own panel \u2014 with blocks such as Post Title, Excerpt, Featured Image or a custom field placed inside the drawer showing the content of the post that card belongs to. Ideal for \"More details\" panels on a resource, directory or product listing.<\/li>\n<li>Fixed: Custom trigger selectors are now resolved inside the block's own post, card or product container instead of always binding to the first match on the page. Previously every card's button was wired to the first card, so the other buttons did nothing and the one that worked looked like a single static panel repeating the same content.<\/li>\n<li>Fixed: A custom trigger selector now opens the drawer from every matching element on the page, not only the first one.<\/li>\n<li>Fixed: Panels inside a Query Loop are no longer trapped by their card. The panel and backdrop are lifted to page level, so a card with a hover lift, transform or filter can no longer clip the drawer or pin it to the card instead of the viewport.<\/li>\n<li>Fixed: The Scroll Into View smart trigger now watches the element in the drawer's own card rather than the first card's.<\/li>\n<li>Fixed: A drawer repeated by a Query Loop now reports its impressions and conversions as one analytics entry instead of a separate entry for every post.<\/li>\n<li>Fixed: Each block instance now gets a post-scoped ID, preventing conflicts when the same drawer is rendered for several posts on one page.<\/li>\n<li>Fixed: Clicking outside a drawer no longer throws an error on pages where the Floating Action Button trigger is not present.<\/li>\n<li>Fixed: The editor no longer reports \"We couldn't find the element with that class or ID\" for a trigger that sits inside the post canvas.<\/li>\n<li>New: Added an optional Analytics Label to every OffCanvas, so several drawers on the same page are no longer all reported under the page title.<\/li>\n<li>New: Added analytics data management \u2014 delete the recorded data for one OffCanvas or clear it all, with a confirmation step. Deleting data never removes the OffCanvas itself.<\/li>\n<li>Improved: Each OffCanvas now keeps one stable analytics identity, so reusing it across several pages reports as a single entry and renaming it preserves its history.<\/li>\n<\/ul>\n\n<h4>2.0.6 (August 02, 2026)<\/h4>\n\n<ul>\n<li>New: Advanced Targeting Rules! Display panels by page or user role, set page exclusions, and automate campaigns with timezone-aware scheduling.<\/li>\n<li>New: Independent Close Transitions! Customize exit animation types, durations, and easing, or mirror the opening animation with one click<\/li>\n<li>New: Analytics Dashboard! Track impressions, trigger clicks, and live conversion rates from a dedicated admin screen.<\/li>\n<li>Improvement: Redesigned the backdrop with a premium layered blur effect for better depth, focus, and visual polish, while remaining fully compatible with existing Background, Opacity, Blur, and Z-Index settings.<\/li>\n<li>Improvement: Exit animations now complete correctly even when transition durations exceed 600ms.<\/li>\n<\/ul>\n\n<h4>2.0.5 (23 May, 2026)<\/h4>\n\n<ul>\n<li>Added device-specific drawer positions for mobile devices.<\/li>\n<li>Added Floating Action Button (FAB) trigger system with advanced styling and positioning controls.<\/li>\n<li>Added mobile swipe gesture support for opening and closing drawers.<\/li>\n<li>Added independent slide directions for mobile devices.<\/li>\n<li>Added device-specific smart auto trigger controls for mobile devices.<\/li>\n<li>Added customizable Z-index controls for drawer panels and backdrops.<\/li>\n<li>Added advanced backdrop styling controls including blur and opacity support.<\/li>\n<li>Improved Gutenberg editor dimension controls for mobile positions.<\/li>\n<li>Fixed smart trigger frequency handling for delay-based triggers.<\/li>\n<li>Fixed multi-instance smart trigger conflicts on the same page.<\/li>\n<li>Fixed manual panel closing restrictions when observed elements are visible.<\/li>\n<\/ul>\n\n<h4>2.0.4 (07 Apr, 2026)<\/h4>\n\n<ul>\n<li>Fix: Resolved license activation check issue by improving class existence validation.<\/li>\n<li>Fix: Fixed broken link in the upgrade modal.<\/li>\n<li>Update: Improved Inspector Controls for a more intuitive and user-friendly experience.<\/li>\n<\/ul>\n\n<h4>2.0.3 (22 Feb, 2026)<\/h4>\n\n<ul>\n<li>Update: Redesigned and modernized admin dashboard interface.<\/li>\n<\/ul>\n\n<h4>2.0.2 (17 Feb, 2026)<\/h4>\n\n<ul>\n<li>New: Added contextual info notes to explain advanced settings and features.<\/li>\n<li>New: Introduced new popup animation types: Zoom, Flip, and Bounce.<\/li>\n<li>New: Added Backdrop blur control support.<\/li>\n<li>New: Added Configurable animation duration(ms).<\/li>\n<li>New: Added Animation easing presets.<\/li>\n<li>Update: Improved validation for custom trigger and smart trigger selectors (class\/ID input).<\/li>\n<li>Update: Enhanced user guidance for Custom Trigger and Smart Auto Trigger options.<\/li>\n<li>Fix: Prevented invalid selector errors from breaking the editor.<\/li>\n<li>Refactor: Removed unnecessary and duplicate logic to improve performance and maintainability.<\/li>\n<\/ul>\n\n<h4>2.0.1 (02 Jan,  2026)<\/h4>\n\n<ul>\n<li>New: Added ripple effect support to the trigger button.<\/li>\n<li>New: Added support for custom close button icons and position controls.<\/li>\n<li>New: Extended popup header options with background control, visibility toggle, and title position settings.<\/li>\n<li>Update: Renamed Trigger Button PanelBody Title for better clarity.<\/li>\n<li>Update: Moved trigger button alignment control to block settings.<\/li>\n<\/ul>\n\n<h4>2.0.0 \u2013 26 Nov 2025<\/h4>\n\n<p>Major Upgrade: New interaction system, smart triggers, design controls, and improved UI\/UX.<\/p>\n\n<h4>1.0.1 \u2013 30 Sep 2024<\/h4>\n\n<ul>\n<li>Fix: Close button icon visibility.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial Release.<\/li>\n<\/ul>","raw_excerpt":"Build responsive off-canvas menus, drawer menus, and exit intent popups with a lightweight Gutenberg block. Includes advanced triggers &amp; analytics.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/bn-in.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/160838","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bn-in.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/bn-in.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/bn-in.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=160838"}],"author":[{"embeddable":true,"href":"https:\/\/bn-in.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/bplugins"}],"wp:attachment":[{"href":"https:\/\/bn-in.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=160838"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/bn-in.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=160838"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/bn-in.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=160838"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/bn-in.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=160838"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/bn-in.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=160838"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/bn-in.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=160838"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}