Yes, using a hook in the page handler would be simpler. This smells too much of making a whole framework for a rare case.

I'm not sure how to convert the nav to menus.