Kentico CMS 7.0 Developer's Guide

Managing sites

Managing sites

Previous topic Next topic Mail us feedback on this topic!  

Managing sites

Previous topic Next topic JavaScript is required for the print function Mail us feedback on this topic!  

Arrow


API examples for newer versions


Please visit the latest API Examples documentation to view API examples for newer versions of Kentico.



The following example creates a site.

 

private void CreateSite()
{
    // Create new site object
    SiteInfo newSite = new SiteInfo();

 
    // Set the properties
    newSite.DisplayName = "My new site";
    newSite.SiteName = "MyNewSite";
    newSite.Status = SiteStatusEnum.Stopped;
    newSite.DomainName = "127.0.0.1";

 
    // Save the site
    SiteInfoProvider.SetSiteInfo(newSite);
}

 

The following example gets and updates a site.

 

private bool GetAndUpdateSite()
{
    // Get the site
    SiteInfo updateSite = SiteInfoProvider.GetSiteInfo("MyNewSite");
    if (updateSite != null)
    {
        // Update the properties
        updateSite.DisplayName = updateSite.DisplayName.ToLower();

 
        // Save the changes
        SiteInfoProvider.SetSiteInfo(updateSite);

 
        return true;
    }

 
    return false;
}

 

The following example gets and bulk updates sites.

 

private bool GetAndBulkUpdateSites()
{
    // Prepare the parameters
    string where = "SiteName LIKE N'MyNewSite%'";

 
    // Get the data
    DataSet sites = SiteInfoProvider.GetSites(where, null);
    if (!DataHelper.DataSourceIsEmpty(sites))
    {
        // Loop through the individual items
        foreach (DataRow siteDr in sites.Tables[0].Rows)
        {
            // Create object from DataRow
            SiteInfo modifySite = new SiteInfo(siteDr);

 
            // Update the properties
            modifySite.DisplayName = modifySite.DisplayName.ToUpper();

 
            // Save the changes
            SiteInfoProvider.SetSiteInfo(modifySite);
        }

 
        return true;
    }

 
    return false;
}

 

The following example deletes a site.

 

private bool DeleteSite()
{
    // Get the site
    SiteInfo deleteSite = SiteInfoProvider.GetSiteInfo("MyNewSite");
 
    if (deleteSite != null)
    {
        TreeProvider treeProvider = new TreeProvider(CMSContext.CurrentUser);
 
        // Delete documents belonging under the site
        DocumentHelper.DeleteSiteTree("MyNewSite", treeProvider);
 
        // Delete the site
        SiteInfoProvider.DeleteSite(deleteSite);
 
        return true;
    }
 
    return false;
}