Different Menu in Different Pages – Conditional Menu Security & Risk Analysis

wordpress.org/plugins/different-menus-in-different-pages

Easily assign different menus to pages, posts, user roles, devices, and custom URLs using advanced conditional menu visibility rules.

4K active installs v2.4.5 PHP 5.4+ WP 5.1+ Updated Oct 19, 2025
conditional-menudifferent-menumenu-visibilitynavigationuser-roles
99
A · Safe
CVEs total1
Unpatched0
Last CVEApr 29, 2024
Safety Verdict

Is Different Menu in Different Pages – Conditional Menu Safe to Use in 2026?

Generally Safe

Score 99/100

Different Menu in Different Pages – Conditional Menu has a strong security track record. Known vulnerabilities have been patched promptly.

1 known CVELast CVE: Apr 29, 2024Updated 5mo ago
Risk Assessment

The 'different-menus-in-different-pages' plugin v2.4.5 exhibits a generally good security posture with a notable exception. The static analysis reveals a robust implementation of security measures, including a high percentage of properly escaped outputs, the exclusive use of prepared statements for SQL queries, and a reasonable number of nonce and capability checks across its entry points. The absence of shortcodes and REST API routes with missing permission callbacks further strengthens its defensive architecture. However, the presence of the `unserialize` function is a significant concern. Unserialization of untrusted user input can lead to arbitrary object injection, a severe vulnerability if not handled with extreme caution and strict input validation. While taint analysis did not reveal critical or high severity issues, the two flows with unsanitized paths warrant further investigation as they could potentially interact with the unserialization function. The plugin's vulnerability history indicates a past medium-severity issue related to missing authorization, which, while currently patched, suggests a historical tendency towards authorization flaws. This, combined with the presence of `unserialize`, points to a moderate overall risk, primarily driven by the potential for a critical vulnerability if the `unserialize` function is misused.

Key Concerns

  • Presence of unserialize function
  • Taint flows with unsanitized paths
  • Medium vulnerability in history
Vulnerabilities
1

Different Menu in Different Pages – Conditional Menu Security Vulnerabilities

CVEs by Year

1 CVE in 2024
2024
Patched Has unpatched

Severity Breakdown

Medium
1

1 total CVE

CVE-2024-3206medium · 4.3Missing Authorization

Different Menu in Different Pages – Control Menu Visibility (All in One) <= 2.3.2 - Missing Authorization to Menu Duplication

Apr 29, 2024 Patched in 2.4.0 (23d)
Code Analysis
Analyzed Mar 16, 2026

Different Menu in Different Pages – Conditional Menu Code Analysis

Dangerous Functions
1
Raw SQL Queries
0
0 prepared
Unescaped Output
30
809 escaped
Nonce Checks
9
Capability Checks
7
File Operations
0
External Requests
1
Bundled Libraries
0

Dangerous Functions Found

unserialize$name = unserialize($name);admin\includes\AjaxRequests\save-different-menu-conditions.php:37

Output Escaping

96% escaped839 total outputs
Data Flows
2 unsanitized

Data Flow Analysis

4 flows2 with unsanitized paths
ajax_paged_change (includes\class-different-menus-for-different-page.php:214)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface

Different Menu in Different Pages – Conditional Menu Attack Surface

Entry Points8
Unprotected0

AJAX Handlers 8

authwp_ajax_dmidp_notice_has_clickedadmin\class-different-menus-for-different-page-admin.php:80
authwp_ajax_backup_different_menus_dataadmin\includes\AjaxRequests\BackupDifferentMenusData.php:15
authwp_ajax_create_duplicate_menuadmin\includes\AjaxRequests\duplicate-menus.php:15
authwp_ajax_remove_all_different_menusadmin\includes\AjaxRequests\RemoveAllDifferentMenus.php:15
authwp_ajax_remove_different_menuadmin\includes\AjaxRequests\RemoveDifferentMenu.php:15
authwp_ajax_save_different_menu_conditionsadmin\includes\AjaxRequests\save-different-menu-conditions.php:15
authwp_ajax_ajax_paged_changeincludes\class-different-menus-for-different-page.php:91
noprivwp_ajax_ajax_paged_changeincludes\class-different-menus-for-different-page.php:92
WordPress Hooks 32
filterwp_nav_menu_argsadmin\class-different-menus-for-different-page-admin.php:61
filterafter_menu_locations_tableadmin\class-different-menus-for-different-page-admin.php:63
actionafter_setup_themeadmin\class-different-menus-for-different-page-admin.php:65
filteradmin_footeradmin\class-different-menus-for-different-page-admin.php:68
actionadmin_menuadmin\class-different-menus-for-different-page-admin.php:72
filterplugin_row_metaadmin\class-different-menus-for-different-page-admin.php:77
actionadmin_initadmin\class-different-menus-for-different-page-admin.php:225
actionadmin_enqueue_scriptsadmin\includes\menu-item-settings.php:16
actionwp_nav_menu_item_custom_fieldsadmin\includes\menu-item-settings.php:17
actionwp_update_nav_menu_itemadmin\includes\menu-item-settings.php:18
filterwp_get_nav_menu_itemsadmin\includes\menu-item-settings.php:20
actionadmin_menuadmin\includes\menu-item-settings.php:22
filterwalker_nav_menu_start_eladmin\includes\menu-item-settings.php:25
actionload-post.phpadmin\partials\metabox.php:8
actionload-post-new.phpadmin\partials\metabox.php:9
actionadd_meta_boxesadmin\partials\metabox.php:16
actionsave_postadmin\partials\metabox.php:17
actionafter_different_menus_settings_page_endadmin\partials\tabOrganizer.php:14
actionadmin_initdifferent-menus-in-different-page.php:54
actionadmin_headincludes\class-different-menus-for-different-page.php:87
actionplugins_loadedincludes\class-different-menus-for-different-page.php:166
actionadmin_enqueue_scriptsincludes\class-different-menus-for-different-page.php:182
actionadmin_enqueue_scriptsincludes\class-different-menus-for-different-page.php:183
actionadmin_enqueue_scriptsincludes\class-different-menus-for-different-page.php:186
actionadmin_enqueue_scriptsincludes\class-different-menus-for-different-page.php:189
actionadmin_enqueue_scriptsincludes\class-different-menus-for-different-page.php:190
actionwp_enqueue_scriptsincludes\class-different-menus-for-different-page.php:513
actionwp_enqueue_scriptsincludes\class-different-menus-for-different-page.php:514
actiondmidp_daily_schedulesincludes\global_functions.php:9
actiondmidp_right_side_noticeincludes\global_functions.php:65
actionadmin_noticesincludes\global_functions.php:107
actionadmin_noticesincludes\global_functions.php:116

Scheduled Events 1

dmidp_daily_schedules
Maintenance & Trust

Different Menu in Different Pages – Conditional Menu Maintenance & Trust

Maintenance Signals

WordPress version tested6.8.5
Last updatedOct 19, 2025
PHP min version5.4
Downloads63K

Community Trust

Rating82/100
Number of ratings20
Active installs4K
Developer Profile

Different Menu in Different Pages – Conditional Menu Developer Profile

recorp

6 plugins · 10K total installs

80
trust score
Avg Security Score
88/100
Avg Patch Time
52 days
View full developer profile
Detection Fingerprints

How We Detect Different Menu in Different Pages – Conditional Menu

Patterns used to identify this plugin on WordPress sites during automated security audits and web crawling.

Asset Fingerprints

Asset Paths
/wp-content/plugins/different-menus-in-different-pages/admin/css/menu-page.css/wp-content/plugins/different-menus-in-different-pages/admin/css/settings-bootstrap.min.css/wp-content/plugins/different-menus-in-different-pages/admin/js/bootstrap-notify.js/wp-content/plugins/different-menus-in-different-pages/admin/js/bootstrap.min.js/wp-content/plugins/different-menus-in-different-pages/admin/js/popper.min.js/wp-content/plugins/different-menus-in-different-pages/admin/js/velocity-ui.min.js/wp-content/plugins/different-menus-in-different-pages/admin/js/velocity.min.js
Script Paths
/wp-content/plugins/different-menus-in-different-pages/admin/js/popper.min.js/wp-content/plugins/different-menus-in-different-pages/admin/js/bootstrap.min.js/wp-content/plugins/different-menus-in-different-pages/admin/js/velocity.min.js/wp-content/plugins/different-menus-in-different-pages/admin/js/velocity-ui.min.js/wp-content/plugins/different-menus-in-different-pages/admin/js/bootstrap-notify.js
Version Parameters
different-menus-in-different-pages/admin/css/settings-bootstrap.min.css?ver=different-menus-in-different-pages/admin/css/menu-page.css?ver=different-menus-in-different-pages/admin/js/popper.min.js?ver=different-menus-in-different-pages/admin/js/bootstrap.min.js?ver=different-menus-in-different-pages/admin/js/velocity.min.js?ver=different-menus-in-different-pages/admin/js/velocity-ui.min.js?ver=different-menus-in-different-pages/admin/js/bootstrap-notify.js?ver=

HTML / DOM Fingerprints

CSS Classes
dmidp-notice
HTML Comments
Start Settings pages itemsEnd Settings pages items
Data Attributes
data-dmidp-notice-id
JS Globals
dmidp_notice_has_clicked
FAQ

Frequently Asked Questions about Different Menu in Different Pages – Conditional Menu