I have a requirement to build a custom navigation menu for SP2013 that will go on the side of each page. I have tried to use OOB Quick launch, global nav and term sets but they all have their own issues that forces me to customize.

My question is, what would be the most efficient way to program this? I don't want to loop through each site and subsite to build the navigation everytime a user loads the page. So it has to be cached, correct? How should I cache it if it is basically just an unordered list with a bunch of child 'li' tags. Where should I build it? server side? or client side? Any direction / suggestions to tackle this would be great! ty

I also need this nav to be updated when a new web is created so I'll have to break the caching at that point.

  • You probably wouldn't need to cache, but rather find out the relevant database query of the sub-site names/links, so definitely server side. – MackieeE Jun 4 '14 at 16:08
  • What if the site collection grows to have hundreds of child webs? You think processing these every page load will be efficient? – Michael Colbs Jun 4 '14 at 16:10
  • 1
    Here's a snippet, well, I suppose if it did grew too big, then you'd need to start nesting - even then, if you handled it serverside, you can insert some level of control to which ones you'd like to display. – MackieeE Jun 4 '14 at 16:14
  • thanks. But I have that code written. The question relates more towards the efficiency of such a module and its context – Michael Colbs Jun 4 '14 at 16:25
  • Is the navigation crossing site collection boundaries or is it scoped to a single site collection? – Derek Gusoff Jun 4 '14 at 18:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.