Thank you for using Aha Mobile Menu

Thank you for trusting our plugins. Aha Mobile Menu gives your site a simple, fast, and customizable mobile menu.

Discover other Aha Plugins and get more out of WordPress — tools built for quality and simplicity.

Visit Aha Plugins →

About the plugin

Aha Mobile Menu is a lightweight off-canvas (sidebar) menu for WordPress. It slides in from the left or right with slide or fade animation, and can be shown on mobile only or on desktop too.

Plugin: Aha Mobile Menu
Version: 1.0.6

It includes: sidebar logo, WordPress navigation menu (including nested submenus), search box, social links with automatic icons, and full color customization. You can open the menu with the built-in shortcode [aha_mobile_menu_trigger] or by adding the class .aha-open-sidebar to any element. Optional addons (such as Aha Mobile Menu Pro) can extend the experience with extra capabilities like configurable action buttons.

Installation

Via WordPress admin

  1. Go to Plugins → Add new.
  2. Search for Aha Mobile Menu (or upload the plugin ZIP file).
  3. Click Install now, then Activate.

Via FTP

  1. Unzip the plugin ZIP file on your computer.
  2. Connect to your server via FTP and go to wp-content/plugins.
  3. Upload the plugin folder (e.g. aha-mobile-menu) into wp-content/plugins.
  4. In the WordPress admin, go to Plugins and activate Aha Mobile Menu.

Configuration (tabs)

After activating the plugin, go to Aha Mobile Menu in the WordPress admin sidebar. Settings are organized in tabs: General, Content, Appearance (sidebar colors), Exclusions, Menu appearance (default trigger button look), Shortcode (full in-admin reference for [aha_mobile_menu_trigger]), Action Buttons (addon preview), and Uninstall (optional data cleanup preference). When Aha Mobile Menu Pro is active, a License tab is also available.

General

In the same tab, Behavior lets you set: close on click outside, close on navigation, and Additional Trigger Classes (one class or CSS selector per line). By default, any element with the class .aha-open-sidebar opens the menu; you can add more selectors here.

General tab

Content

Content tab

Appearance

Choose a color palette (default, dark, light, purple, blue, green, etc.) and customize background, text, close button, search form, and link colors.

Appearance tab

Exclusions

Specify pages, posts, or post types where the sidebar (and its assets) should not be loaded. Useful to avoid conflicts or save resources on specific templates.

Exclusions tab

Addons & Pro

Aha Mobile Menu works fully on its own (including nested submenus). If you need extra features, you can install compatible addons such as Aha Mobile Menu Pro, which adds configurable action buttons and license management inside the same settings screen.

  1. Install and activate the free Aha Mobile Menu plugin first.
  2. Install and activate Aha Mobile Menu Pro (upload ZIP or copy folder to wp-content/plugins).
  3. In the admin, go to Aha Mobile Menu and open the License tab (added by Pro).
  4. Paste the license key you received after purchase and click Validate license.
  5. When the status shows Active, the Action Buttons tab is enabled and you can configure CTA buttons for the menu.
License tab
Requirement Pro depends on the free plugin. Keep both active.

Product page: https://ahaplugins.com/product/aha-mobile-menu/

Hooks & Filters

Aha Mobile Menu exposes 20+ action hooks and 15+ filters so you can extend or modify any part of the plugin without editing its files. Place your code in your theme's functions.php or in a custom plugin.

Quick example
Add a call-to-action link below the navigation menu:
add_action( 'aha_mobile_menu_after_menu', function() {
    echo '<a href="/contact" class="my-cta">Contact us</a>';
} );

Lifecycle actions

These actions fire during the plugin's bootstrap cycle.

HookWhen it fires
aha_mobile_menu_init After all plugin classes are ready (plugins_loaded, priority 15). Safe point to interact with any plugin class or function.
aha_mobile_menu_activate On plugin activation. Use it to set up initial data for add-ons.
aha_mobile_menu_deactivate On plugin deactivation. Use it to clean up transients or temporary data.

Sidebar injection points

These actions fire at specific positions inside the off-canvas sidebar HTML. They let you inject custom content without editing template files.

aha_mobile_menu_header_start
aha_mobile_menu_logo_start
[ logo ]
aha_mobile_menu_logo_end
aha_mobile_menu_close_button_start
[ × close button ]
aha_mobile_menu_close_button_end
aha_mobile_menu_header_end
aha_mobile_menu_content_start
aha_mobile_menu_before_search
[ search form ]
aha_mobile_menu_after_search
aha_mobile_menu_before_menu
[ navigation menu ]
aha_mobile_menu_after_menu
aha_mobile_menu_content_end
aha_mobile_menu_footer_start
aha_mobile_menu_before_social_links
[ social links ]
aha_mobile_menu_footer_end

Usage examples

// Add a promo bar below the header
add_action( 'aha_mobile_menu_header_end', function() {
    echo '<div class="promo-bar">🎉 Summer sale — 20% off</div>';
} );

// Add a label above the social icons
add_action( 'aha_mobile_menu_before_social_links', function() {
    echo '<p class="social-label">Follow us</p>';
} );

// Add a copyright line at the very bottom
add_action( 'aha_mobile_menu_footer_end', function() {
    echo '<p class="copyright">&copy; ' . date( 'Y' ) . ' My Company</p>';
} );

Admin actions

HookDescription
aha_mobile_menu_settings_tab_{slug} Fires when a custom tab is active on the settings page. Register the tab via aha_mobile_menu_settings_tabs filter, then render its content here.
aha_mobile_menu_uninstall_tab_after_list Fires after the default cleanup list on the Uninstall tab. Add-ons use it to list additional data they would remove.
// 1. Register a custom settings tab
add_filter( 'aha_mobile_menu_settings_tabs', function( $tabs ) {
    $tabs['my-addon'] = __( 'My Add-on', 'my-addon' );
    return $tabs;
} );

// 2. Render its content
add_action( 'aha_mobile_menu_settings_tab_my-addon', function() {
    echo '<h2>My Add-on Settings</h2>';
} );

Frontend rendering filters

FilterParametersDescription
aha_mobile_menu_pre_render $render (bool) Return false to prevent the sidebar from rendering on the current request.
aha_mobile_menu_sidebar_classes $classes (array) Add or remove CSS classes on the sidebar element.
aha_mobile_menu_sidebar_style $style (string), $settings (array) Modify the inline style attribute of the sidebar element.
aha_mobile_menu_animations $animations (array) Add custom animation slug → CSS class mappings.
aha_mobile_menu_trigger_classes $classes (array) Add extra CSS classes that open the sidebar when clicked. aha-open-sidebar is always present.
aha_mobile_menu_menu_args $args (array) Modify the arguments passed to wp_nav_menu() (e.g. depth, walker, container class).
aha_mobile_menu_social_link $html (string), $link (array) Modify the HTML of each individual social link element.
// Hide the sidebar on a specific page
add_filter( 'aha_mobile_menu_pre_render', function( $render ) {
    if ( is_page( 'landing' ) ) {
        return false;
    }
    return $render;
} );

// Limit the navigation menu to 2 levels
add_filter( 'aha_mobile_menu_menu_args', function( $args ) {
    $args['depth'] = 2;
    return $args;
} );

Asset filters

FilterParametersDescription
aha_mobile_menu_enqueue_assets $enqueue (bool) Return false to prevent the plugin from loading its CSS and JS (e.g. when you bundle them yourself).
aha_mobile_menu_js_settings $settings (array) Modify the data object passed to main.js via wp_localize_script.
aha_mobile_menu_inline_styles $css (string), $settings (array) Append extra CSS variables or rules to the inline style block generated from settings.
// Append a custom CSS variable to the inline styles
add_filter( 'aha_mobile_menu_inline_styles', function( $css, $settings ) {
    $css .= ':root { --my-brand-color: #ff6600; }' . "\n";
    return $css;
}, 10, 2 );

Data filters

FilterParametersDescription
aha_mobile_menu_social_networks $networks (array) Add extra social networks. They appear in the settings dropdown and fall back to the website icon if no specific SVG exists.
aha_mobile_menu_action_button_icons $icons (array) Register extra icon slugs for Action Buttons (Pro add-on).
aha_mobile_menu_action_button_icon_svg $svg (string), $slug (string), $size (int) Provide SVG markup for custom icon slugs registered above.
aha_mobile_menu_settings_tabs $tabs (array) Add, remove, or reorder settings page tabs.
aha_mobile_menu_uninstall_option_names $option_names (array) Register additional option names to be deleted from the database when the plugin is uninstalled with data removal enabled.
// Add a custom social network
add_filter( 'aha_mobile_menu_social_networks', function( $networks ) {
    $networks['threads'] = __( 'Threads', 'my-plugin' );
    return $networks;
} );

// Register an add-on's option for cleanup on uninstall
add_filter( 'aha_mobile_menu_uninstall_option_names', function( $option_names ) {
    $option_names[] = 'my_addon_license_key';
    return $option_names;
} );

Video – Setup and demo

Video walkthrough for activation and plugin demonstration.

[Video placeholder]

Add your setup and demo video embed (YouTube, Vimeo, etc.) here.