Search code examples
c#episerveroptimizely

EpiServer - IContentLoader returns different page types when filtering for the start page


I'm trying to get the start pages in Razor code so I can display different navs based on the start page. Here's how I'm doing it:

var contentLoader = EPiServer.ServiceLocation.ServiceLocator.Current.GetInstance<IContentLoader>();
var pages = contentLoader.GetChildren<PageData>(ContentReference.StartPage);

This is what shows up in the debugger. I was expecting to only see pages of type, Start. But I'm seeing Hero pages and everything. Any ideas what's going on here?

enter image description here


Solution

  • I was able to resolve this by passing in the ContentReference for the root page and my start page object.

    var pages = contentLoader.GetChildren<namespace.StartPage>(ContentReference.RootPage);