ShiftNav – Responsive Mobile Menu

Description

ShiftNav is an awesome mobile menu for WordPress. It looks and acts like native app off-canvas slide-out menus for popular apps like Facebook, Gmail, etc.

ShiftNav Demo – see how it works

Get started: ShiftNav Quick Setup Guide

Feature Overview

  • Native App-Style Menus
  • Automatic Integration
  • Light & Dark Skins
  • Works with the WordPress 3 Menu System
  • Touch-enabled
  • CSS3 Transitions produce smooth animations on mobile devices
  • Configurable

Knowledgebase

Want to take your menu to the next level? Go Pro

Browser Compatibility

ShiftNav will open with a slide transition with browsers that support it. For browsers that don’t fully support CSS3 transforms, the menu will fall back to non-animated open/close functionality.

Installation

Install ShiftNav just like any other WordPress plugin.

Full Installation & Setup Instructions

FAQ

Detailed documentation and FAQs can be found here: ShiftNav Knowledgebase

How do I get started?

Please see the ShiftNav Quick Setup Guide

Reviews

liyasun 20, 2023
I got what I needed from the free version but as I know and trust this developer from previous excellent work on a different CMS platform, I bought pro to support. Unlike the others, the free version doesn’t take over your site or prompt you with nagware. That alone is worth the reasonable fee. Highly recommended.
Alunsun 17, 2022
I’m running a custom theme with a fixed position header and the menu button would not display. Some fairly minor CSS additions to bring the menu to the front solved my problem and it now works great.
avuvɔsun 17, 2021
In my view, this is the best WP responsive menu so far. It was intelligently designed whit an uncomplicated user friendly interaction. The tool is ideal for the non-professional amateurish DIYfer. Congrats and special thanks to Chris Mavricos.
avuvɔsun 13, 2021
I’ve been using ShiftNav on every new website I create now for the past few months and figured it was time to leave a review. I’ve thoroughly enjoyed using this plugin, it works perfectly “out of the box” and is not heavily limited like other plugins (ones that are almost forcing you to buy the pro version) which I love. Well done to the developer, you’ve created a great plugin here!
Read all 68 reviews

Contributors & Developers

“ShiftNav – Responsive Mobile Menu” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

1.8

  • IMPORTANT: If you update and your toggle bar disappears, please switch the TOGGLE BAR INJECTION setting to “Footer” – see https://sevenspark.com/docs/shiftnav-updates/v1-8-update-notes
  • [Pro] Search accessibility: Screen reader label and switch toggle to button, aria for toggles and search
  • [Pro] Feature: Ability to replace search in dropdown with custom code or shortcodes
  • Feature: Option to place Toggle bar in header rather than footer, defaults to header. Adjusted tabindexes accordingly.
  • Enhancement: Add Button option for back tag (now default)
  • Enhancement: Panel width uses clamp function
  • Enhancement: Added –shiftnav-panel-width variable to easily set panel width
  • Enhancement: Support for dvh units for panel height
  • Compatibility: Deprecated property in EDD SL updater
  • Accessibility: Add role=button to submenu toggles
  • Fix: Admin bar location at certain breakpoints

1.7.2

  • [Pro] Enhancement: Consistent scrollTo on page reload
  • [Pro] Enhancement: Close ScrollTo links immediately when setting is enabled
  • Security Update

1.7.1

  • [Pro] Feature: Custom Anchor Class setting for menu items
  • [Pro] Feature: Scroll Tolerance setting
  • Enhancement: Improve Control Panel tab overflow handling
  • Enhancement: Add font-display:block on Font Awesome to make Lighthouse happy
  • Enhancement: Force toggle to absolute when printing to avoid printing on every page
  • Update: PHP 8 compatibility
  • Update: jQuery 3 compatibility in admin panel
  • Fix: Admin menu item Shift button hovering
  • Fix: Panel close button layering when scrolling menu items
  • Fix: Panel double scroll bar corner case

1.7.0.1

  • [Pro] Feature: Hide Toggle Bar when scrolling down
  • Feature: Major keyboard accessibility features upgrade
  • Feature: Added shiftnav-open and shiftnav-close Javascript events to panel
  • Feature: Option to close panel immediately on link click
  • Accessibility Enhancement: Close panel when focus leaves
  • Accessibility Enhancement: Screenreader close button inside panel
  • Accessibility Enhancement: Close panel on escape
  • Accessibility Enhancement: Aria Label setting for toggle
  • [Pro] Enhancement: Improve ScrollTo offset accuracy
  • Enhancement: Handle current item ancestors when using UberMenu menu segments
  • Enhancement: Improve gap logic
  • Enhancement: Properly handle SVG image sizing when selected for panel Top Image
  • Compatibility: Removed deprecated create_function() call; minimum PHP version 5.3
  • Fix: Panel Title Font Weight setting
  • Fix: Properly parse Android 10 to fix animation disabling
  • Fix: Class duplication issue

1.6.3

  • Feature: Disable Submenu setting
  • Feature: Added ‘shiftnav_op’ filter
  • Enhancement: Add auto-gap even if no breakpoint is set
  • [Pro] Enhancement: Display connection errors if trouble communicating with update server
  • Update: Add $depth parameter to nav_menu_link_attributes filter
  • Update: Add $depth parameter to nav_menu_css_class filter

1.6.2

  • Feature: Added shiftnav_main_toggle_icon_class filter
  • Feature: Added shiftnav_main_toggle_content filter
  • Enhancement: Better defenses against meddling themes
  • Enhancement: Show re-activate license message when license status is inactive
  • Enhancement: Set font size explicitly in stylesheets to eliminate shrinking font size inheritance
  • Fix: Typo

1.6.1.2

  • Fix: For new toggle padding CSS insertion compatibility enhancement, make sure it can work even if an optimizer externalizes the ShiftNav head style tag

1.6.1

  • [Pro] Feature: Setting to choose the open and close icons for accordion menus
  • Enhancement: Add body padding-top via a CSS style tag rather than directly applying styling to the body node, to improve compatibility with other themes/plugins controlling the body tag

1.6

  • [Pro] Feature: Configure whether to automatically generate each secondary instance or not
  • [Pro] Feature: Improved license updater to allow for re-checking and re-registration when necessary, and show expiration date
  • Enhancement: Touch-off close setting now applies to search dropdown as well as menu panel
  • Security hardening: Rewrite fragment handling to remove potential DOM-based (client-side) XSS (thanks, Martin Hall!)

1.5.2

  • Enhancement: Reorganize code to better handle deferred and async javascript
  • Enhancement: Add disable_content attribute to shiftnav_toggle shortcode
  • Enhancement: Don’t throw error when there’s an invalid hash string

1.5.1.2

  • UX Enhancement: Main toggle now closes open secondary menu
  • jQuery 3 Compatibility Enhancement: Change .size() calls to .length
  • Fix: Remove extraneous closing tag when using UberMenu Menu Segments in ShiftNav

1.5.1.1

  • Fix: Properly handle UberMenu Menu Segments when they have been renamed by the user and using multiple segments

1.5.1

  • Update: Update Font Awesome icons to 4.7

1.5

  • Feature: Hamburger only toggle
  • Feature: Transparent/overlapping toggle background
  • Feature: RTL support
  • Feature: Handle UberMenu Menu Segments (optionally)
  • Enhancement: Configurable Back Button text
  • Enhancement: jQuery 3 compatibility
  • Enhancement: Make sure WP Admin Bar is layered on top when hovered
  • Enhancement: Update Font Awesome to latest version
  • Enhancement: Translations can be set in wp-content/languages folder
  • Enhancement: Enable or Disable Gap override
  • Enhancement: Stronger CSS resets to try to avoid styles from badly coded themes
  • Various minor enhancements: admin bar line height, remove divs inside spans, remove ShiftNav waiting to load message (use window.load fallback), better arrangement/order of settings,

  • [Pro] Feature: Disable Text on individual menu items (can use Icon only items now)

  • [Pro] Feature: Search shortcode post_type now configurable
  • [Pro] Feature: Custom Icon Class setting for using custom icon sets
  • [Pro] Feature: Login/logout shortcodes
  • [Pro] Enhancement: Add Display Panel Close Button setting to secondary instances
  • [Pro] Enhancement: Allow Back Button to appear at top of Shift submenus optionally
  • [Pro] Enhancement: Styled user profile for use in Toggle Bar

1.4

  • Feature: Control setting via Customizer to take advantage of live preview
  • Feature: Added optional Close button inside menu panel
  • Feature: Independent hamburger button size setting
  • Feature: Reset settings for each settings tab
  • Feature: Added option to switch back button tag to span rather than anchor (to avoid interference from themes like Avada)
  • Enhancement: Base submenu determination on child array rather than class to avoid being broken by themes that strip out core WordPress menu classes
  • Enhancement: Allow non-px to be used for the Toggle Breakpoint, if desired
  • Enhancement: Updated Font Awesome to v4.5
  • Enhancement: Added additional notices in setting descriptions for clarity.
  • Enhancement: Make loading more robust by falling back to window.load in case another script throws an error on document.ready
  • Enhancement: Allow shortcodes in Image Link settings
  • Enhancement: Handle child items of disabled items
  • Enhancement: Avoid gap when opening menu panel

1.3.0.3

  • Update to properly handle ignoring UberMenu advanced items and displaying their child items

1.3.0.2

  • Enhancement: Improved scrolling on Android with latest version of Chrome
  • Enhancement: Clear license data when deleted
  • Fix: ScrollTo JS quotes corner case

1.3.0.1

  • 1.3 deployment was missing /assets directory

1.3

  • Feature: Fixed Toggle Buttons
  • Feature: Default Toggle Styles
  • Feature: ShiftNav Wrapper setting to define pre-existing shift wrapper
  • Feature: Icon toggled class
  • Feature: Ignore UberMenu Advanced items in ShiftNav, but still display child items
  • Feature: Display ShiftNav only on mobile devices
  • Feature: Allow shortcodes in Navigation Labels
  • Feature: Ability to disable transforms
  • Feature: Automatically auto play videos after shiftnav-wrap is added
  • Feature: Fire shiftnav-loaded event
  • Feature: Scroll To Offset setting
  • Feature: Setting to make toggle entire bar vs just button
  • Feature: Touch-off close as configurable setting
  • Enhancement: Layer ShiftNav over admin bar
  • Enhancement: Multiple breakpoint pixel widths rather than percentages
  • Enhancement: Better UberMenu Conditionals compatibility
  • Enhancement: Load ShiftNav after UberMenu
  • Enhancement: When the main toggle bar is disabled, don’t push down the WP Admin bar
  • Enhancement: Padding tweaks
  • Enhancement: Whitelist Android browsers rather than blacklist
  • Enhancement: Avoid unintended opening with erroneous touchEnd events
  • Enhancement: Make sure centered toggled bar content doesn\’t overlap toggle icon
  • Enhancement: Prevent swipe-open above breakpoint

1.2

  • Feature: Disable item setting
  • Feature: Hide UberMenu setting
  • Feature: UberMenu 3 Conditionals support
  • Feature: Setting to kill filters from bad themes
  • Feature: Set main toggle absolute or fixed
  • Feature: Optional close button when menu is open
  • Enhancement: Hide menu on IE7-8
  • Enhancement: Improve ShiftNav toggle compatibility with admin bar
  • Enhancement: Remove line height from shiftnav-wrap class
  • Enhancement: Remove scrollbar when content is short

1.0.1

  • Improved mobile device detection to fallback on devices that don’t support CSS3 transforms

1.0

  • Added unsaved changes alert to menu item in Menus Panel
  • Updated admin styles to work better in Firefox.
  • Allow shortcodes, HTML in toggle content
  • Added spacing in Menu Panel when settings panel is active
  • Added non-transform option (disable “Shift Body”)
  • Fixed overflow scrolling and dragging on iOS
  • Moved menu bars icon depending on whether panel is left or right
  • Added Custom CSS Tweaks setting
  • Added active hover state setting
  • Removed disable menu option to avoid confusion (pro only)
  • Added Scroll Lock independently for horizontal and both

0.2

  • Added Menu Bar Font Size Setting
  • Automatically enlarge toggle font size below 960px
  • Added Indent Always Visible Submenus option (per menu)
  • Added Smooth Scrolling on iOS
  • Added ability to disable menu
  • Added menu item size adjustments (global)
  • Added Disable Link ability

0.1

Initial Beta Release