[Progress Communities] [Progress OpenEdge ABL] Forum Post: Create Dynamic Page with with content in Content Blocks in Sitefinity 11.1

  • Thread starter Thread starter nikunj.polara@alept.com
  • Start date Start date
Status
Not open for further replies.
N

nikunj.polara@alept.com

Guest
Hi All, I am trying to create dynamic page with content in content block. Page created with selected template however content block is not properly created even content block not displays title "Content Block" when edit that page. When browsing that page in browser it not display any content on the page. Kindly review below code which I used to create page with content. PageManager manager = PageManager.GetManager(); if (parentPageNodeId == Guid.Empty) { parentPageNodeId = SiteInitializer.CurrentFrontendRootNodeId; } PageNode parent = manager.GetPageNode(parentPageNodeId); var pageId = Guid.NewGuid(); PageNode pageNode = manager.CreatePage(parent, pageId, Telerik.Sitefinity.Pages.Model.NodeType.Standard); PageData pageData = pageNode.GetPageData(); pageData.Culture = Thread.CurrentThread.CurrentCulture.ToString(); pageData.HtmlTitle = pageDetail.Title; pageNode.Name = pageDetail.Title; pageNode.Description = pageDetail.Title; pageNode.Title = pageDetail.Title; pageNode.UrlName = Regex.Replace(pageDetail.Title.ToLower(), @"[^\w\-\!\$\'\(\)\=\@\d_]+", "-"); pageNode.ShowInNavigation = true; pageNode.DateCreated = DateTime.UtcNow; pageNode.LastModified = DateTime.UtcNow; pageNode.ApprovalWorkflowState = "Published"; if (pageDetail.Title.ToLower() == "home") { SystemManager.CurrentContext.CurrentSite.SetHomePage(pageId); } manager.SaveChanges(); manager.Provider.SuppressSecurityChecks = true; // Set Page template PageTemplate template2 = manager.GetTemplates().Where(a => a.Name == "OneColumnHeaderFooter").FirstOrDefault(); var pageDataId = manager.GetPageNode(pageId).PageId; var page = manager.EditPage(pageDataId, CultureInfo.CurrentUICulture); page.TemplateId = template2.Id; manager.PagesLifecycle.CheckIn(page); manager.PublishPageDraft(page, CultureInfo.CurrentUICulture); manager.SaveChanges(); // Create content Block with content ContentBlock cManager = new ContentBlock(); cManager.Html = pageDetail.Content; cManager.IsShared = false; cManager.Enabled = true; cManager.Visible = true; cManager.ID = "D002"; App.WorkWith().Page(pageNode.Id).AsStandardPage() .CheckOut() //.SetTemplateTo(templateId) .Control() .CreateNew(cManager, "Content") .Do(c => { c.PlaceHolder = GetContentPlaceholderId(template2.Id, "Content", 0); c.SiblingId = GetLastControlInPlaceHolderInPageId(pageNode.Id, c.PlaceHolder); }) .SaveChanges() .Done() .CheckIn() .Publish() .SaveChanges(); Kindly review above code and let me know what I am missing. Thanks for your help.

Continue reading...
 
Status
Not open for further replies.
Back
Top