PublishingSite.IsPublishingSite Method
Checks the SPSite object to determine whether it is also a PublishingSite object.
Namespace: Microsoft.SharePoint.Publishing
Assembly: Microsoft.SharePoint.Publishing (in Microsoft.SharePoint.Publishing.dll)
Syntax
'Declaration
Public Shared Function IsPublishingSite ( _
site As SPSite _
) As Boolean
'Usage
Dim site As SPSite
Dim returnValue As Boolean
returnValue = PublishingSite.IsPublishingSite(site)
public static bool IsPublishingSite(
SPSite site
)
Parameters
- site
Type: Microsoft.SharePoint.SPSite
Site to be validated.
Return Value
Type: System.Boolean
Set to True if the PublishingResources feature has been activated for the SPSite object; otherwise, set to False.
Exceptions
Exception | Condition |
---|---|
ArgumentNullException | SPSite cannot be a null reference (Nothing in Visual Basic). |
Remarks
Checks the SPSite to determine whether the PublishingResources feature has been activated on the SPSite object. This method must be called before a PublishingSite object is instantiated.
Examples
using SPSite = Microsoft.SharePoint.SPSite;
using PublishingSite = Microsoft.SharePoint.Publishing.PublishingSite;
using SPWeb = Microsoft.SharePoint.SPWeb;
using PublishingWeb = Microsoft.SharePoint.Publishing.PublishingWeb;
using PublishingWebCollection = Microsoft.SharePoint.Publishing.PublishingWebCollection;
using SPWebTemplate = Microsoft.SharePoint.SPWebTemplate;
namespace Microsoft.SDK.SharePointServer.Samples
{
public static class PublishingWebCollectionCodeSamples
{
// This method creates a new PublishingWeb below the root Web of a PublishingSite object.
//
// Prerequisites:
// The SPSite passed should be a site that supports publishing.
//
// This sample demonstrates use of:
// PublishingSite.IsPublishingSite( SPSite )
// PublishingSite constructor
// PublishingSite.RootWeb
// PublishingWeb.GetPublishingWebs()
// PublishingWeb.Web
// PublishingWebCollection.Add(string, uint, string)
public static void CreatePublishingWebBelowRoot( SPSite site, SPWebTemplate webTemplate )
{
// TODO: Replace these variable values and input parameters with your own values.
// yourWebURL: name for the PublishingWeb object to create.
string yourWebUrlName = "yourWebUrl";
PublishingWeb newWeb = null;
try
{
//
// Validate the input parameters.
//
if (null == site)
{
throw new System.ArgumentNullException("site");
}
if (null == webTemplate)
{
throw new System.ArgumentNullException("webTemplate");
}
PublishingSite publishingSite = null;
if (!PublishingSite.IsPublishingSite(site))
{
throw new System.ArgumentException(
"The SPSite is expected to be a PublishingSite",
"site");
}
publishingSite = new PublishingSite( site );
SPWeb rootWeb = publishingSite.RootWeb;
if( !PublishingWeb.IsPublishingWeb( rootWeb ))
{
throw new System.ArgumentException(
"The SPSite.RootWeb is expected to be a PublishingWeb",
"site");
}
PublishingWeb rootPublishingWeb = PublishingWeb.GetPublishingWeb( rootWeb );
PublishingWebCollection publishingWebs = rootPublishingWeb.GetPublishingWebs();
//
// Create the new PublishingWeb object using the sample values provided.
//
newWeb = publishingWebs.Add(
yourWebUrlName,
rootWeb.Language, // TODO: Replace with your own language value.
webTemplate.Name ); // TODO: Replace with your Web template name.
// The new PublishingWeb has the Publishing feature active.
System.Diagnostics.Debug.Assert(
null != newWeb.Web.Features[Microsoft.SharePoint.Publishing.FeatureIds.Publishing]);
}
finally
{
//
// Always close the SPWeb object when done to release memory.
//
if( null != newWeb )
{
newWeb.Web.Close();
}
}
}
}
}