Try our conversational search powered by Generative AI!

New CMS User/Developer - understanding Mosey sample


Hi, I have been an Ektron developer for 10 years. I am now looking at Optimizely, and have downloaded the Foundation code and have the Mosey sample running.

I find myself, naturally, trying to associate all the things I do in Ektron with the Optimizely CMS.

I could use some help with a couple of starters:

  1. Where is the Menu defined? In the Mosey sample, it reaches to a search service; I had to sign up for an account to get that to not crash.
  2. How do you modify the menu, or create a new one? In Ektron "Menus" is one of the main categories in the CMS left-pane. 
  3. Where are the Templates defined? I see they exist in the CMS because when I create a new page I pick one, but I don't seem them (maybe I am missing them) in the Visual Studio codebase. At least not like Ektron in a \Templates folder
  4. Are there Widgets, like in Ektron?

I'm sure I have more questions but it would go a long way to get the above answered. 



Mar 26, 2024 19:34


Welcome to the Optimizely Community!

I think the best thing to do is explore the code base and get familiar with the architecture and folder layout as this helps to find areas in the solution. Remember the foundation project is for guidance.

To help you get up and running hopefully this will help:

  1. Menu items are defined in a 'LayoutSettings' page within the CMS. Look in the tree navigation and you should see something like 'Settings'. Once you have found this page then there is a property 'MainMenu' this is where you can add some items to the menu. Really you can build a menu however you like this is one-way. You can traverse the page treee and pull out the items you wish and build a navigation that way or implement you own architecture.
  2. there a number of partial / components that build out the navigation render, start with the layouts '_MasterLayout','_Layout' and then work your way down too '_Header','_Navigation','_Menu'.
  3. Widgets to me sound like re-useable functionality across the site Optimizely uses a concept called 'blocks' and this would be the same I believe as widgets.

If you need more help I would advise either the optimizely documenation, start with 'Content Management System' and learn as much as you can. Additionaly there is some courses on the optimizely academy  that will also help learn the platform.


Mar 27, 2024 10:39

Thanks Paul for that info. I'm sure different developers with varying background and experience will have unique encounters with the Foundation and Mosey samples. The code looks great in both of them, but I do see an opportunity for Optimizely or whoever created/architected them to possibly go on at some length in a white paper explaining the architecture and how everything works. There are good in-line comments but I'm talking overall. I'm gradually getting it but it would come faster with more tutilage (or documentation/training that accomplishes the same). I will have to look into the Academy you mentioned. Our account rep mentioned some official training, maybe the Academy is what they meant. I'm sure it will come together. The documention is fairly extensive but after spending some time reading through it seems a bit patchy and high-level in most places, combined with some samples that don't work (at least for me, like the one for creating and empty site:


Naturally after 10 years of Ektron I know it like the back of my hand so it is a big adjustment. 


Apr 10, 2024 14:29
* You are NOT allowed to include any hyperlinks in the post because your account hasn't associated to your company. User profile should be updated.