Menu Managerfor WHMCS · Documentation
v2.0.0

Requirements & Install

What you need before uploading Menu Manager, and how to activate it.


Requirements

  • WHMCS 8.x or 9.x.
  • PHP as required by your WHMCS version.
  • A running WHMCS daily cron (only needed for activity-log pruning).
  • A valid license key — entered in the module configuration after activation. The key is emailed after purchase and is also available in the client area under Account → My Products → manage product.
License required — after activating the module, click Configure and enter the License key you received by email (or from the client area: Account → My Products → manage product). The module will not run until a valid key is saved.

Install

  1. Upload the module folder — copy menuManager/ into your WHMCS installation:
WHMCS_ROOT/modules/addons/menuManager/
  menuManager.php   ← addon entry point + client area click controller
  hooks.php         ← navbar hooks (rules, sticky, click recorder, cron)
  whmcs.json        ← module metadata
  logo.png
  README.md
  lang/             ← language files
  lib/              ← namespaced classes
  templates/        ← admin Smarty templates
  templates_c/      ← compiled templates (auto-created)
  1. Activate the addon — in the WHMCS admin area go to Configuration → System Settings → Addon Modules, find Menu Manager and click Activate.
  2. Enter your license key — click Configure, paste the License key and save.
  3. Open the module — click the module name to open the Dashboard.
  4. Pick your template — on Settings select Six, Twenty-One or Nexus, then edit the menus.

What activation does

Activation imports the live menus by replaying the WHMCS navbar factories into storage/menus.json, creates the hsc_mm_settings table, and seeds Available Languages with your WHMCS default client language. Settings default to engine enabled with the Twenty-One template selected.

Upgrading from the legacy Menu Manager

If you ran the legacy module (mod_menumanager / mod_menumanagerconfig tables): back up the database, upload the new folder (removing/renaming a same-named legacy folder first), activate, and rebuild your rules in the new module — there is no automatic migration (different storage model). The legacy tables are never touched; drop them manually once you are happy.