using (SPSite site = new SPSite("http://siteUrl"))
{
using (SPWeb web = site.OpenWeb())
{
PublishingWeb publishingWeb = PublishingWeb.GetPublishingWeb(web);
PageLayout[] pageLayouts = publishingWeb.GetAvailablePageLayouts();
string pageName = "pageName.aspx";
string checkInComment = "check in comments";
var targetPageLayout = from pagelayout in pageLayouts
where pagelayout.Name == "CustomPageLayout.aspx"
select pagelayout;
if (targetPageLayout != null)
{
PublishingPageCollection pages = publishingWeb.GetPublishingPages();
PublishingPage newPage = pages.Add(pageName, (PageLayout)targetPageLayout.FirstOrDefault());
newPage.ListItem[FieldId.PublishingPageContent] = "content goes here";
newPage.ListItem[FieldId.Title] = "page title goes here";
newPage.ListItem["CustomField"] = "custom field value goes here";
newPage.ListItem.Update();
newPage.Update();
newPage.CheckIn("checkin comment");
SPFile pageFile = newPage.ListItem.File;
pageFile.Publish(checkInComment);
pageFile.Approve(checkInComment);
}}
}
No comments:
Post a Comment