PublishingWeb.IsPublishingWeb Method
Checks the SPWeb object to verify whether it is a PublishingWeb object.
Namespace: Microsoft.SharePoint.Publishing
Assembly: Microsoft.SharePoint.Publishing (in Microsoft.SharePoint.Publishing.dll)
Syntax
'Declaration
Public Shared Function IsPublishingWeb ( _
web As SPWeb _
) As Boolean
'Usage
Dim web As SPWeb
Dim returnValue As Boolean
returnValue = PublishingWeb.IsPublishingWeb(web)
public static bool IsPublishingWeb(
SPWeb web
)
Parameters
- web
Type: Microsoft.SharePoint.SPWeb
The SPWeb object to be validated.
Return Value
Type: System.Boolean
Set to True if the SPWeb class supports being wrapped in a PublishingWeb instance. Otherwise, it is set to False.
Exceptions
Exception | Condition |
---|---|
[System.ArgumentNullException] | The SPWeb cannot be null. |
Remarks
This method checks the SPWeb instance to determine if the 'Publishing' feature has been activated on it.
We recommend that you use this method before you call the [T:Microsoft.SharePoint.Publishing.PublishingWeb.GetPublishingWeb(Microsoft.SharePoint.SPWeb)] method.
Examples
This sample demonstrates setting and saving property values on a publishing Web. Before building and running this sample, verify that Publishing feature has been enabled for the SPWeb, and that the defaultPageFileId is SPFile.UniqueId for the new default page.
[c#]
using SPContentTypeId = Microsoft.SharePoint.SPContentTypeId;
using SPContentType = Microsoft.SharePoint.SPContentType;
using SPSite = Microsoft.SharePoint.SPSite;
using SPFile = Microsoft.SharePoint.SPFile;
using SPWeb = Microsoft.SharePoint.SPWeb;
using PublishingSite = Microsoft.SharePoint.Publishing.PublishingSite;
using PublishingWeb = Microsoft.SharePoint.Publishing.PublishingWeb;
using PageLayoutCollection = Microsoft.SharePoint.Publishing.PageLayoutCollection;
using PageLayout = Microsoft.SharePoint.Publishing.PageLayout;
namespace Microsoft.SDK.SharePointServer.Samples
{
public static class PublishingWebCodeSamples
{
public static void SetPublishingWebProperties(SPWeb web, System.Guid defaultPageFileId)
{
// TODO: Replace these variable values and input parameters
// with your own values.
string newTitle = "your Title"; // new PublishingWeb.Title value
string newDescription = "your Description"; // new PublishingWeb.Description value
bool resetInheritPageLayouts = true; // new PublishingWeb.IsInheritingAvailablePageLayouts value
bool resetInheritWebTemplates = true; // new PublishingWeb.IsInheritingAvailableWebTemplates value
// Validate the input parameters.
if (null == web)
{
throw new System.ArgumentNullException("web");
}
// Get the PublishingWeb wrapper for the SPWeb
// that was passed in.
PublishingWeb publishingWeb = null;
if (PublishingWeb.IsPublishingWeb(web))
{
publishingWeb = PublishingWeb.GetPublishingWeb(web);
}
else
{
throw new System.ArgumentException("The SPWeb must be a PublishingWeb", "web");
}
// Retrieve the SPFile.
SPFile newDefaultPageFile = publishingWeb.Web.GetFile(defaultPageFileId);
if( (null == newDefaultPageFile) ||
!newDefaultPageFile.Exists )
{
throw new System.ArgumentException(
"The Guid does not match an SPFile on the SPWeb",
"defaultPageFileId");
}
// Set new values on the PublishingWeb.
publishingWeb.Title = newTitle;
publishingWeb.Description = newDescription;
publishingWeb.DefaultPage = newDefaultPageFile;
if( resetInheritPageLayouts &&
!publishingWeb.IsInheritingAvailablePageLayouts &&
!publishingWeb.IsRoot)
{
publishingWeb.InheritAvailablePageLayouts();
System.Diagnostics.Debug.Assert(publishingWeb.IsInheritingAvailablePageLayouts);
}
if (resetInheritWebTemplates &&
!publishingWeb.IsInheritingAvailableWebTemplates &&
!publishingWeb.IsRoot)
{
publishingWeb.InheritAvailableWebTemplates();
System.Diagnostics.Debug.Assert(publishingWeb.IsInheritingAvailableWebTemplates);
}
// Save the new values on the PublishingWeb.
publishingWeb.Update();
}
}
}