UberMenu 2 to UberMenu 3 Migration

Version 3 is a MAJOR upgrade. Please be sure to test this on a test/staging server before deploying to your live site, and always take a backup before making any changes to a live site.

Settings Migration System

Please note that by migrating your settings, settings from UberMenu 2 will override any matching settings from UberMenu 3 which you have already configured

UberMenu 3 has a system for migrating your UberMenu 2 settings to UberMenu 3. Note that you should have already installed the update by deleting the old UberMenu files and installing the new version.

When you first update from UberMenu 2 to UberMenu 3, UberMenu 3 will automatically detect if there are settings to upgrade and present your with this message.

Click the Begin Migration button to proceed to the Migration panel. To dismiss the notice, click No, thanks

If for some reason the message does not appear but you know there are settings to migrate, or if you change your mind later, the Migration panel can be accessed under General Settings > Maintenance > Migrate Settings.

There are two sets of settings to migrate: Control Panel Settings and Menu Item Settings. Generally you don’t need to change anything on this screen, but if you have a lot of menus and only one is an UberMenu, you should uncheck the non-UberMenus to save some processing time.

Click the Confirm & Migrate Settings button to complete the settings migration. You will see a confirmation when the process is complete:


In order to allow multiple UberMenu instances per page and simpler CSS customization, UberMenu’s CSS selectors have been revised, including a move from an ID root to a class root. As a result, the specificity of the CSS rules is lower in UberMenu 3 than in UberMenu 2. This means that when you update to UberMenu 3, you may end up with residual styling from your theme. If you do, you can use Manual Integration to prevent the theme from interfering.

Note that UberMenu’s classes have also changed, for example, rather than using .menu-item and .sub-menu, the menu now uses .ubermenu-item and .ubermenu-submenu. This should actually reduce the amount of residual styling from any theme which has properly coded their menu using classes rather than just tags (.menu-item .sub-menu rather than the overly generic ul li ul)


You will need to re-assign your widgets once you upgrade to UberMenu 3. I recommend taking a screenshot of your widget configuration before updating. After updating, find the widgets in your Inactive Widgets area and drag them into the appropriate UberMenu widget areas.

Custom Styles & Stylesheets

If you have written a custom stylesheet, the selectors have changed in UberMenu 3, so you’ll need to rewrite the styles with the new selectors. I recommend starting with the custom-sample-skin.css stylesheet so that you have all the proper selectors, and copy your properties into the appropriate style selectors.

For your reference, here is an annotated version of the custom stylesheet

Note that many styles can be generated via the Customizer, so you may be able to recreate many of your custom styles using the Customizer rather than with custom CSS.

Custom Conditionals

If you have written any custom conditionals for the Conditionals Extension, the uberMenu_display_item filter is now ubermenu_display_item, and takes 7 parameters, the 7th of which is optional.

On this page