Sticky Menu on Scroll, Sticky Header for Any Theme – myStickymenu

Description

This sticky menu plugin will make your menu or header sticky on top of page, after desired number of pixels when scrolled. This lightweight plugin will help your visitors navigate easily and reach to the navigation menu without wasting time. Install My Sticky Menu and improve your website’s user experience! If you want to change the CSS style, disable on scroll down or disable on specific pages. check out the PRO version.

By default, sticky menu is designed to use element class « .navbar » as « Sticky Class ». That value should be modified in plugin settings for different themes to make it work. Sticky Class is actually nothing more than an element class (or id) of the element that should become sticky.

With more than 60,000+ active installs and around 100 five-stars reviews, you can be sure that My Sticky Menu plugin is the right fit for your website.

BENEFITS

  • Improve user experience by letting your visitors access the navigation menu and navigate to the pages they want when they want to.
  • Make your website look more modern with sticky menu on desktop and mobile.
  • Increase number of pageviews and

The sticky header function is localized (multi language support) and responsive (as far as your theme is). Also there is possibility to add custom css code which make this plugin very flexible, customizable and user friendly.

My Sticky Menu plugin is originally designed for Twenty Thirteen template but should work on any theme, like: OceanWP, Nirvana Template, Travelify, Twenty Sixteen, Twenty Ten, Twenty Eleven, Max Magazine, Graduate, Lawyer theme, Spacious, Suits and more.

WITH MY STICKY MENU YOU CAN:

  • Show sticky header on scroll down/up
  • Fade or slide effect
  • Disable at small screen
  • Choose when to make visible on scroll
  • Change the background color
  • Change the opacity
  • Change the sticky transition time
  • Define the z-index of the sticky header

WHAT DO YOU GET IN THE PRO PLAN?

  • Disable floating menu on Desktop/Mobile
  • Disable floating menu on scroll down
  • Add CSS style to the floating header
  • Disable floating header on specific pages
    >> See Pro plans here

Testimonials

« Works great.
One of the key element that i consider when choosing a theme is the sticky menu option. If the theme doesn’t have it normally I don’t use it. But now that’s not a problem for me anymore. »

« This plugin rocks!
This plugin does exactly what it should. It is simple but powerful. I would suggest to anyone who wants to make their navigation menu sticky! I especially love the hide header on scroll down, show on scroll up feature that is built it. Great work!

Captures d’écran

  • screenshot-1.png shows general administration settings.
  • screenshot-2.png shows style settings.
  • screenshot-3.png shows advanced settings.

Installation

Install like any other plugin. After install activate.
Go to Settings / myStickymenu and change Sticky Class to .your_navbar_class or #your_navbar_id . Sticky Class should be HTML id or class of the HTML element desired to be sticky… Clear WordPress cache if exists.

For example:

Celestial-Lite (sticky header)
** Sticky Class => #branding
** .myfixed css class => .myfixed { margin:0 auto!important; float:none!important; border:0px!important; background:none!important; max-width:100%!important; } .myfixed #site-navigation { margin-top:0px!important; } .myfixed #logo img {width: 200px;}

Church Theme
** Sticky Class => #menu-hauptnavi

Customizr Theme
** Sticky Class => .row-fluid (for header) or .nav (for menu)

CyberChimps
** Sticky Class => .navbar-inner

Decode
** Sticky Class => .header-menu
** Make visible when Scrolled after => 370
** .myfixed css class => .myfixed { margin:0 auto!important; float:none!important; border:0px!important; background:none!important; max-width:100%!important; padding-top:5px; padding-bottom:5px; }

Genesis / Dynamik Theme
** Sticky Class(sticky header) =>.site-header
** Sticky Class(sticky menu) =>.nav-primary

Graduate
** Sticky Class => .main-navigation

Graphene
** Sticky Class => #header-menu-wrap

Illdy
** Sticky Class => .top-header
** Disable at Small Screen Sizes => 993

Illdy (mobile support)
** Sticky Class => .header-blog
** CSS Style => #mysticky-nav .myfixed { margin:0 auto; float:none; border:0px; background:none; max-width:100%; } .myfixed .bottom-header {display:none;}

Lawyer theme
** Sticky Class => .wrapper
** .myfixed { margin:0 auto!important; float:none!important; border:0px!important; background:none!important; max-width:100%!important; } .myfixed { padding-left: 0px; padding-bottom: 0px; padding-top: 0px; } .wrapfixed { -webkit-box-shadow: 0 8px 6px -6px rgba(68,68,68,0.6); -moz-box-shadow: 0 8px 6px -6px rgba(68,68,68,0.6); box-shadow: 0 8px 6px -6px rgba(68,68,68,0.6); } .myfixed .logo img { max-height: 45px; } .myfixed .quick-info { display: none; } .myfixed .mainmenu { margin: 0px } .myfixed .mainmenu { padding-top: 7px; }

Max Magazine
** Sticky Class => #nav
** Make visible when Scrolled after => 250
** .myfixed css class => .myfixed { margin:0 auto!important; float:none!important; border:0px!important; background:none!important; max-width:100%!important; } #nav { min-height:40px!important; }

Naturo Lite
** Sticky Class => .header-inner

Nirvana Template
** Sticky Class => #access

OceanWP
** Sticky Class => #site-header

Responsive
** Sticky Class => .main-nav
** Make visible when Scrolled after => 250
** .myfixed css class => .myfixed { margin:0 auto!important; float:none!important; border:0px!important; max-width:100%!important;} .myfixed .menu { background:none!important;}

Spacious
** Sticky Class => #masthead (sticky header)
** Make visible when Scrolled after => 250
** .myfixed css class => .myfixed { margin:0 auto!important; float:none!important; border:0px!important; max-width:100%!important;} .myfixed #site-description { display:none;} .myfixed #site-title a { font-size: 24px; } .myfixed #header-text { padding:0px!important;} .myfixed .main-navigation { padding-top: 0px!important; }

Storefront
** Sticky Class => .main-navigation

Suits
** Sticky Class => .navbar

Tempera Template
** Sticky Class => .menu

Travelify
** Sticky Class => #main-nav

Twenty Sixteen
** Sticky Class => .site-header-main

Twenty Ten
** Sticky Class => .menu
** Make visible when Scrolled after => 370
** .myfixed css class => .myfixed { margin:0 auto!important; float:none!important; border:0px!important; background:none!important; max-width:100%!important; } .menu {min-height:38px;}

Twenty Eleven
** Sticky Class => #access
** Make visible when Scrolled after => 600
** .myfixed css class => .myfixed { float:none!important; max-width:100%;}
.myfixed .menu { background-color:none; float:left; }
.myfixed div { margin: 0px!important ; padding: 0px 7.6%; }

Twenty Eleven (add search to sticky menu bar)
** Sticky Class => #branding
** Make visible when Scrolled after => 600
** .myfixed css class => .myfixed { margin:0 auto!important; float:none!important; border:0px!important; background:none!important; max-width:100%!important; } .myfixed a {display:none;} #mysticky-wrap {min-height:500px;} .myfixed #site-title, .myfixed #site-description{display:none;} .myfixed #access { margin: 0px auto 0px; } .myfixed #searchform { top: 0.3em!important; }

Twenty Twelve
** Sticky Class => .nav-menu
** Make visible when Scrolled after => 250

Twenty Thirteen (sticky header – add your own custom logo image and edit to suite your needs)
** Sticky Class => #masthead
** .myfixed css class => .myfixed { margin:0 auto; max-width:1070px; width:100%!important;} .myfixed .search-form, .myfixed .site-description, .myfixed .site-title { display:none;} .myfixed .home-link { max-width: 55px; min-height: 38px; margin-left:20px; float:left; background-image: url(‘logo.png’); } .myfixed .navbar { max-width:645px; float:right;} .wrapfixed .navbar { background-color: transparent; } .wrapfixed ul { padding-right:0px; }

Webnus netStudio theme
** Sticky Class =>.nav-wrap2

Weblizar
** Sticky Class => .row

Wrock Metro Theme (entire header)
** Sticky Class =>#navigation

FAQ

How to find Sticky Class, what should I enter here?

So this depends on what you want to make sticky and what theme do you use, but for example if you want your menu to be sticky, than you can examine the code (in firefox right click and “View page source”) and find HTML element in which your menu is situated. This element have some class or id, and that’s the Sticky Class we need. If using class than don’t forget to ad dot (.) in front of class name, or hash (#) in front of id. Twenty Thirteen default working class is « .navbar » without of quotes.

Is there any way to restrict the width to the width of the header, rather than it being full width?

Yes, just leave « Sticky Background Color » field blank (clear). Than if needed define custom background color for sticky header inside « .myfixed css class » field using .myfixed class.

Ho do I add small logo to the menu?

That will depend on a theme you use, but if initially your menu and logo are in one div than you can use that div class or id in myStickymenu settings.

If not you can change that in your header template file and add logo and menu divs inside new div with some custom class or id, than use that class or id in myStickymenu settings as a sticky class.

In CSS you can style your custom class while not sticky using custom class you added before. Furthermore you can style your menu while sticky using .myfixed class which is added by js to your custom class while sticky is active.

In some cases you can use the whole header div and than just style it different with .myfixed class, hide what you don’t need using CSS display:none; property, and position logo and menu as you like.

Avis

Amazing. Works perfectly.

I donated, because it's amazing! Keep up the great work 🙂 I am using MyStickyMenu, to have a sticky header. I use the option to disable on scroll down.

Works…but not with Elementor.

I am new to WordPress and discovered this great page builder named Elementor a few weeks ago. Seems to make developing a 'drag and drop' site a piece of cake. But as I now discover more useful plug-ins, like MyStickyMenu, I'm discovering Elementor doesn't play 'nice' with quite a few of them. Elementor has a built-in sticky feature for the Pro version which I have. Problem is...it has a BUG! It works as it should when scrolling vertically BUT once the sticky header is engaged...the header will not resize or be responsive horizontally if you change the size of your browser window. So, I Googled for a solution and came across MyStickyMenu, installed it and without having to do anything...my live site's sticky header was working as it should! My live site's sticky header worked vertically by staying on top and then resized horizontally as it should. But when I went in to edit a page using Elementor...sure enough...Elementor would not load properly. I had to then disable MyStickyMenu and live with Elementor's flawed version of the sticky header. So...as far as I'm concerned...MyStickyMenu works as advertised but like so many things with WordPress...other solutions won't work with it. Drew Las Vegas

Works great

One of the key element that i consider when choosing a theme is the sticky menu option. If the theme doesnt have it normally i dont use it. But now that's not a problem for me anymore

This plugin rocks!

This plugin does exactly what it should. It is simple but powerful. I would suggest to anyone who wants to make their menu sticky! I especially love the hide header on scroll down, show on scroll up feature that is built it. Great work!
Lire les 106 avis

Contributeurs & développeurs

« Sticky Menu on Scroll, Sticky Header for Any Theme – myStickymenu » est un logiciel libre. Les personnes suivantes ont contribué à cette extension.

Contributeurs

“Sticky Menu on Scroll, Sticky Header for Any Theme – myStickymenu” a été traduit dans 4 locales. Remerciez l’équipe de traduction pour ses contributions.

Traduisez « Sticky Menu on Scroll, Sticky Header for Any Theme – myStickymenu » dans votre langue.

Le développement vous intéresse ?

Parcourir le code, consulter le SVN dépôt, ou s’inscrire au journal de développement par RSS.

Journal

2.1

New and easy UI, you can now select your menu from a dropdown

2.0.6

  • Fixed: Enable / Disable at 404 page

2.0.5

  • Added: Admin settings sidebar right
  • Added: Admin separated js script
  • Added: Admin separated css script

2.0.4

  • Added: Hide for large screens

2.0.3

  • Fixed: Missing bg color field

2.0.1

  • Fixed: If user logged in but admin bar is not showing (error to calculate activation height)
  • Fixed: Admin style conflict with Scripts n Styles plugin

2.0

  • Added: If Make visible on Scroll is set to 0 automatic activation and deactivation scroll height will be used (useful for responsive designs).
  • Added: Tabs for settings.
  • Added: option to disable on scroll down (show only on scroll up).
  • Added: Class .up and .down on scroll up or down.
  • Added: Reset to default settings.
  • Added: remove myStickymenu settings on plugin uninstall.
  • Added: index.php to plugin root to prevent directory browsing.
  • Fixed: If sticky menu class does not exist (null or undefined), it will show console log instead of error.
  • Fixed: slide effect now slides on deactivate as well.
  • Fixed: admin bar overlap for screens less than 600 px wide.

1.9.1

  • Changed: admin bar is fixed as default, and menu goes under it.

1.9

  • Fixed: enable / disable for search pages.

1.8.9

  • Added: New option – Disable at certain posts and pages.

1.8.8

  • Fixed: removed esc_attr for echo css, since input is already sanitized.

1.8.7

  • Fixed: minor bug when browser resized.

1.8.6

  • Fixed: minor bug.

1.8.5

  • Improved: Improved performance and optimized scripts.

1.8.4

  • Fixed: changed is_home() to is_front_page() for menu activation height on front page.

1.8.3

  • Change: minor cosmetic changes…

1.8.2

  • Fixed: js load on https

1.8.1

  • Added: “Disable CSS“. If you plan to add style manually to your style.css in order to improve your site performance disable plugin CSS style printed by default in document head element.
  • Minimized mystickymenu.js to improve performance.

1.8

  • Added: « Make visible when scrolled on Homepage » after number of pixels. Now it’s possible to have one activation height for home page and another for the rest of the pages.
  • Added German language

1.7

  • Added multi language support (localization).
  • Added languages – English (default), Spanish, Serbian and Croatian.
  • Added Iris color picker script.
  • Fixed jumping of page on scroll while menu is activated (height is defined before scroll event).
  • mystickymenu.js moved to js folder

1.6

  • Added: « Make visible when scroled » after number of pixels option.
  • Fixed opacity 100 bug.

1.5

  • Added option to enter exact width in px when sticky menu should be disabled « Disable at Small Screen Sizes ».
  • Added “.myfixed css class” setting field – edit .myfixed css style via plugin settings to create custom style.
  • Fixed google adsense clash and undefined index notice.
  • is_user_logged_in instead of old “Remove CSS Rules for Static Admin Bar while Sticky” option

1.4

  • Added fade in or slide down effect settings field for sticky class.
  • Added new wrapped div around selected sticky class with id mysticky_wrap which should make menu works smoother and extend theme support.

1.3

  • Added « block direct access » to the mystickymenu plugin file (for security sake).
  • Added Enable / Disable at small screen sizes and Remove not necessary css for all themes without admin bar on front page.
  • Added “margin-top :0px” to .myfixed class in head which should extend theme support.

1.2

  • Fixed mystickymenu.js for IE browsers, so myStickymenu is now compatible with IE 10, 11

1.1

  • Added administration options, now available through Dashboard / Settings / myStickymenu. Options are as follows: Sticky Class, Sticky z-index, Sticky Width, Sticky Background Color, Sticky Opacity, Sticky Transition Time.
  • Old mystickymenu.css file is deprecated and not in use anymore.

1.0

  • First release of myStickymenu plugin