1. There is no direct method that will return the page by name. First you could get the pages and resolve the name by Id. another option is using the SiteMapNode and getting the page by url - the page name is added to the page url. The third option is using List of CmsQueryCondition
var searchField =
List<CmsQueryCondition> conditions =
var Manager =
var result = Manager.GetPages(0, 0,
.Empty, System.ComponentModel.ListSortDirection.Descending, conditions,
2. You could get a Draft version of page when you work with workflow enabled. The Draft is ApprovalStatus of the workflow life cycle.
sample code ( you should have the page and its ID)
ICmsPage cmsPage =(ICmsPage)cmsManager.GetPage(pageID,
WorkflowInstance workflow = cmsPage.GetWorkflow();
PageWorkflow activity = (PageWorkflow)workflow.Activity;
(activity.ApprovalStatus == ApprovalStatus.Draft)
// the page is in status draft
or directly get the page status by passing the ID and creating CmsPageInfo object.
var cmsPage1 = (ICmsPage)Manager.GetPage(pageID);
Telerik.Cms.CmsPageInfo pageInfo =
s = pageInfo.Status
the Telerik team
Do you want to have your say when we set our development plans?
Do you want to know when a feature you care about is added or when a bug fixed?
Telerik Public Issue Tracking
system and vote to affect the priority of the items.