PublishingSite Class
Provides publishing behavior for an SPSite object that supports publishing.
Assembly: Microsoft.SharePoint.Publishing (in Microsoft.SharePoint.Publishing.dll)
The PublishingSite class provides publishing-specific behavior for an SPSite object that supports publishing, including access to commonly used publishing-related objects from the SPSite object's RootWeb property such as PageLayout objects in the master page gallery and SPContentType objects. You can instantiate objects of this class by using the public constructor [T:Microsoft.SharePoint.Publishing.PublishingSite(Microsoft.SharePoint.SPSite)].The PublishingSite class wraps an SPSite class. The PublishingResources feature must already be activated for the SPSite class, which you can verify by calling the IsPublishingSite method.
This class also directly exposes the underlying SPSite through the Site property so that you can easily access additional SPSite functionality through the object model.