Home > Software engineering >  EpiServer - IContentLoader returns different page types when filtering for the start page
EpiServer - IContentLoader returns different page types when filtering for the start page

Time:04-14

I'm trying to get the start page 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

CodePudding user response:

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);

CodePudding user response:

If you want to get the start page (just one instance) and it is the same start page that is selected as start page in admin mode for the configuration of your site you should do the following

var startPage = contentLoader.Get<StartPage>(ContentReference.StartPage);
  • Related