A while ago we used to recommend a plugin called “CE Menu Per Page” when users asked us for a simple way to assign a menu per page really easily. Generally people want a menu per page in place when making multiple landing pages etc.
Recently CE Menu Per Page got removed from the wordpress.org plugins repo, so I decided to build my own. Essentially the plugin is just a simple filter to replace the menu if an alternative menu has been chosen for a page, the metabox used for giving the user the menu options is usually the meat of the code in a plugin like this, but since all our themes use the CMB2 metabox framework, it means this plugin is incredibly light. In fact to give the metabox to the user and create the menu swapping filter is done in around 60 lines of PHP, so it’s nice and lightweight.