WP Manifestindependent plugin directory
manifest / users / advanced-menu-items-visibility-control

Advanced Menu Items Visibility Control WP Registry grade A. No security issues foundWP RegistryNo security issues foundOpen the reportA

Control menu item visibility based on Login Status, WordPress User Roles, Restrict Content Pro Membership and Restrict Content Pro Access Levels.

★ 1stars
50release downloads
v1.3.4latest · 3mo ago

Install

Download advanced-menu-items-visibility-control.zip From the v1.3.4 release on GitHub, Jun 26, 2026

Upload it under Plugins → Add New Plugin → Upload Plugin, then activate.

Install straight from GitHub with WP-CLI:

wp plugin install https://github.com/guilamu/advanced-menu-items-visibility-control/releases/download/v1.3.4/advanced-menu-items-visibility-control.zip
Updates itself. It ships its own updater, so new versions appear under Dashboard → Updates.

Plugin Screenshot

Advanced Menu Items Visibility Control

A WordPress plugin that provides advanced visibility controls for navigation menu items based on user authentication status, roles, and Restrict Content Pro membership settings.

Description

Advanced Menu Items Visibility Control extends WordPress's native menu system by adding granular visibility options to individual menu items. Control which users see specific menu items based on their login status, WordPress roles, RCP membership levels, and access levels.

This plugin integrates seamlessly with Restrict Content Pro to provide membership-based menu visibility, while also working independently for role-based and login-status controls.

Features

  • Login Status Control: Show menu items to everyone, only logged-in users, or only logged-out users
  • WordPress Role Restrictions: Limit menu visibility to specific WordPress user roles
  • RCP Membership Level Integration: Show menu items only to members with specific membership levels
  • RCP Access Level Support: Control visibility based on RCP access levels (0-10+)
  • Multiple Criteria Support: Combine multiple restrictions (all criteria must match)
  • Translation Ready: Full internationalization support with included French translation
  • Clean Admin UI: Accordion-style interface in the menu editor
  • Smart Conditionals: RCP options only appear when "Logged In" is selected
  • Automatic Child Hiding: Child menu items are hidden when parent items are hidden

Requirements

  • WordPress 5.0 or higher
  • PHP 7.0 or higher
  • Restrict Content Pro (optional, required only for membership/access level features)

Installation

Manual Installation

  1. Download the plugin files
  2. Upload the advanced-menu-items-visibility-control folder to /wp-content/plugins/
  3. Activate the plugin through the 'Plugins' menu in WordPress
  4. Navigate to Appearance → Menus to configure visibility options

GitHub Installation

cd wp-content/plugins
git clone https://github.com/guilamu/Advanced-Menu-Items-Visibility-Control.git

Then activate the plugin in WordPress.

Translation

The plugin is fully translation-ready and includes the following translations:

Available Languages

  • English (default)
  • French (Français) - Complete translation included

Translation Files

The plugin includes:

  • languages/advanced-menu-items-visibility-control.pot - Template file for translators
  • languages/advanced-menu-items-visibility-control-fr_FR.po - French translation source
  • languages/advanced-menu-items-visibility-control-fr_FR.mo - French translation (compiled)

Contributing Translations

To contribute a translation:

  1. Copy the .pot file from the languages/ folder
  2. Rename it to advanced-menu-items-visibility-control-{locale}.po (e.g., de_DE.po for German)
  3. Use Poedit or another translation tool to translate the strings
  4. Compile the .po file to .mo format
  5. Submit a pull request with both .po and .mo files

All translatable strings are wrapped with WordPress internationalization functions (__(), _e(), esc_html_e()).

## Usage

Basic Setup

  1. Go to Appearance → Menus in your WordPress dashboard
  2. Select a menu to edit or create a new one
  3. Click on any menu item to expand its settings
  4. Find the "Visibility Options" accordion section
  5. Configure your desired visibility rules

Visibility Options

1. Login Status

Choose one of the following:

  • Show to Everyone (default): No restrictions
  • Show only to Logged In Users: Menu item visible only to authenticated users
  • Show only to Logged Out Users: Menu item visible only to guests

2. User Roles

Select one or more WordPress user roles. The menu item will only be visible to users who have at least one of the selected roles.

Available roles include:

  • Administrator
  • Editor
  • Author
  • Contributor
  • Subscriber
  • Custom roles (if defined)

3. Membership Levels (Requires RCP + "Logged In" status)

Select specific Restrict Content Pro membership levels. Only members with one of the selected membership levels will see the menu item.

Note: This option only appears when Restrict Content Pro is active and "Show only to Logged In Users" is selected.

4. Access Levels (Requires RCP + "Logged In" status)

Set a minimum RCP access level (0-10+). Only users with the specified access level or higher will see the menu item.

Note: This option only appears when Restrict Content Pro is active and "Show only to Logged In Users" is selected.

Logic Rules

When multiple restrictions are applied:

  • Login Status is checked first
  • If "Logged Out" is selected, all other checks are skipped
  • If "Logged In" is selected, the user must match ALL selected criteria:
    • Must have at least one of the selected roles (if any specified)
    • Must have at least one of the selected membership levels (if any specified)
    • Must meet the minimum access level (if specified)

Screenshots

The plugin adds an accordion-style "Visibility Options" section to each menu item in the WordPress menu editor, providing an intuitive interface for configuring all visibility rules.

Frequently Asked Questions

Does this plugin require Restrict Content Pro?

No. The plugin works independently for login status and role-based restrictions. RCP is only required if you want to use membership level or access level features.

What happens if I deactivate Restrict Content Pro?

The plugin will continue to work for login status and role-based restrictions. Membership and access level restrictions will be ignored.

Can I use multiple restrictions together?

Yes. When multiple restrictions are set, users must satisfy ALL criteria to see the menu item (AND logic, not OR).

Will child menu items be hidden automatically?

Yes. If a parent menu item is hidden, all its children are automatically hidden as well.

Does this affect menu performance?

The plugin uses efficient WordPress hooks and only processes menu items on the frontend. Performance impact is minimal.

Changelog

1.3.4

  • Fix: Fixed "Plugin not found" error on details popup by using high-priority filter plugins_api_result to shield update payloads from mutation
  • Fix: Avoided PHP fatal errors by replacing dynamic get_plugin_data() calls with static constants
  • Improved: Replaced PHP 8.0+ functions with backward-compatible code for PHP 7.x support
  • Improved: Support for custom plugin folder names during checks and updates

1.3.3

  • Fix: Resolved a fatal error when clicking "View details" due to Parsedown 1.8.0 removing the deprecated setSafeMode() method (updated to setMarkupEscaped()).

1.3.2

  • New: Added CSS pattern banner in plugin details modal (geometric B&W background with styled h2 title pill, no external image required)

1.3.1

  • Improved: Rewrote GitHub updater to match reference template (README.md parsing, Parsedown, tables_to_divs, plugin_info_css)
  • New: Added "View details" thickbox link in plugin row meta
  • New: Added Parsedown.php for Markdown-to-HTML conversion in plugin info modal

1.3.0

  • New: Integrated Guilamu Bug Reporter support
  • New: Added "Report a Bug" link in plugins list
  • Improved: Added version constant for centralized version management

1.2.4

  • Critical Fix: Fixed RCP Access Level checking which was non-functional

1.2.3

  • Critical Fix: Fixed RCP membership level detection that returned stale/cached data
  • Implemented direct membership query that bypasses RCP's rcp_get_customer_membership_level_names() API caching bug
  • Removed non-functional function_exists() check for rcp_user_has_access_level()
  • Changed membership level comparison from IDs to names for more reliable matching

1.2.2

  • Security: Added capability check in save function
  • Security: Fixed nonce duplication issue
  • Security: Replaced _e() with esc_html_e() for proper output escaping
  • Performance: Added transient caching for GitHub API calls
  • Performance: Implemented update_meta_cache() to prevent N+1 queries
  • Architecture: Externalized CSS/JS to separate files in assets/
  • Architecture: Refactored auto-update to class-based approach (includes/class-github-updater.php)
  • Architecture: Added uninstall.php for clean data removal
  • Standards: Changed to admin_enqueue_scripts hook per WordPress standards

1.2.1

  • Added multilingual support (i18n)
  • Included French translation (fr_FR)
  • Added POT file for translators
  • Improved text domain implementation

1.1

  • Added plugin information API for update details modal
  • Enhanced GitHub update integration

1.0

  • Initial release
  • Login status control (everyone/logged in/logged out)
  • WordPress role-based restrictions
  • Restrict Content Pro membership level integration
  • Restrict Content Pro access level support
  • Accordion-style admin interface
  • Automatic parent-child menu handling

Author

Guilamu

Support

For bug reports, feature requests, or contributions, please visit the GitHub repository.


Note: This plugin modifies menu visibility on the frontend. Always test your menu configurations with different user roles and login states to ensure they work as expected.

Releases

11 releases. Each count is every asset in that release; expand a row for the breakdown.

Tag
Published
Assets
Downloads
v1.3.4 latest
Jun 26, 2026 3mo ago
advanced-menu-items-visibility-control.zip
8
Jun 26, 2026 3mo ago
advanced-menu-items-visibility-control.zip
1
Apr 5, 2026 6mo ago
advanced-menu-items-visibility-control.zip
18
Mar 31, 2026 6mo ago
advanced-menu-items-visibility-control.zip
4
Jan 18, 2026 9mo ago
advanced-menu-items-visibility-control.zip
4
Jan 1, 2026 9mo ago
advanced-menu-items-visibility-control.zip
7
Dec 30, 2025 9mo ago
advanced-menu-items-visibility-control.zip
5
Dec 30, 2025 9mo ago
advanced-menu-items-visibility-control.zip
3
Nov 26, 2025 11mo ago
tag only
—
Nov 26, 2025 11mo ago
tag only
—
1.0
Nov 26, 2025 11mo ago
tag only
—
A grade

Security

Advanced Menu Items Visibility Control 1.3.4 · audited by WP Registry

No security issues found.

Audited release
1.3.4
Findings
none
Worst severity
—
Content hash
0400b57a7a38495e66229a32…

WP Registry hashes the installable build and reports on that exact bytes-for-bytes copy. Embargoed findings are withheld until they are disclosed, so a clean verdict means nothing public is outstanding. WP Manifest does not audit code itself.