Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
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.SPSiteThe 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 )
{
// 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, // Replace with your own language value.
webTemplate.Name ); // 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();
}
}
}
}
}
Imports SPSite = Microsoft.SharePoint.SPSite
Imports PublishingSite = Microsoft.SharePoint.Publishing.PublishingSite
Imports SPWeb = Microsoft.SharePoint.SPWeb
Imports PublishingWeb = Microsoft.SharePoint.Publishing.PublishingWeb
Imports PublishingWebCollection = Microsoft.SharePoint.Publishing.PublishingWebCollection
Imports SPWebTemplate = Microsoft.SharePoint.SPWebTemplate
Namespace Microsoft.SDK.SharePointServer.Samples
Public NotInheritable 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)
Private Sub New()
End Sub
Public Shared Sub CreatePublishingWebBelowRoot(ByVal site As SPSite, ByVal webTemplate As SPWebTemplate)
' Replace these variable values and input parameters with your own values.
' yourWebURL: name for the PublishingWeb object to create.
Dim yourWebUrlName As String = "yourWebUrl"
Dim newWeb As PublishingWeb = Nothing
Try
'
' Validate the input parameters.
'
If Nothing Is site Then
Throw New System.ArgumentNullException("site")
End If
If Nothing Is webTemplate Then
Throw New System.ArgumentNullException("webTemplate")
End If
Dim publishingSite As PublishingSite = Nothing
If Not PublishingSite.IsPublishingSite(site) Then
Throw New System.ArgumentException("The SPSite is expected to be a PublishingSite", "site")
End If
publishingSite = New PublishingSite(site)
Dim rootWeb As SPWeb = publishingSite.RootWeb
If Not PublishingWeb.IsPublishingWeb(rootWeb) Then
Throw New System.ArgumentException("The SPSite.RootWeb is expected to be a PublishingWeb", "site")
End If
Dim rootPublishingWeb As PublishingWeb = PublishingWeb.GetPublishingWeb(rootWeb)
Dim publishingWebs As PublishingWebCollection = rootPublishingWeb.GetPublishingWebs()
'
' Create the new PublishingWeb object using the sample values provided.
'
newWeb = publishingWebs.Add(yourWebUrlName, rootWeb.Language, webTemplate.Name) ' Replace with your Web template name. - Replace with your own language value.
' The new PublishingWeb has the Publishing feature active.
System.Diagnostics.Debug.Assert(Nothing IsNot newWeb.Web.Features(Microsoft.SharePoint.Publishing.FeatureIds.Publishing))
Finally
'
' Always close the SPWeb object when done to release memory.
'
If Nothing IsNot newWeb Then
newWeb.Web.Close()
End If
End Try
End Sub
End Class
End Namespace