Query all live pages

Native API

To get all live pages, you use the GetPageDataList method. Then, you filter based on the Status property.

Use the following code sample:

C#
using System.Linq;
using Telerik.Sitefinity.GenericContent.Model;
using Telerik.Sitefinity.Modules.Pages;
using Telerik.Sitefinity.Pages.Model;

namespace SitefinityWebApp
{
    public class QueryPages_GetLivePages_NativeAPI
    {
        public IQueryable<PageData> GetLivePagesNativeAPI()
        {
            PageManager pageManager = PageManager.GetManager();
            IQueryable<PageData> pages = pageManager.GetPageDataList().Where(pData => pData.Status == ContentLifecycleStatus.Live);
            return pages;
        }
    }
}

Fluent API

To get all live pages, you use the plural facade to get all page nodes. Then, you filter based on the Status property of the PageData object.

Use the following code sample:

C#
using System.Linq;
using Telerik.Sitefinity;
using Telerik.Sitefinity.GenericContent.Model;
using Telerik.Sitefinity.Pages.Model;

namespace SitefinityWebApp
{
    public class QueryPages_GetLivePages_FluentAPI
    {
        public IQueryable<PageNode> GetLivePagesFluentAPI()
        {
            IQueryable<PageNode> pageNodes = App.WorkWith().Pages().Where(pN => (pN.GetPageData() != null && pN.GetPageData().Status == ContentLifecycleStatus.Live)).Get();
            return pageNodes;
        }
    }
}
Want to learn more?
Enhance your Sitefinity skills by enrolling in free training sessions. Become Sitefinity certified through Progress Education Community to strengthen your professional credentials.
This Article Contains
New to Sitefinity?