Overview

In the following sample you learn the different APIs to access the current site in a multisite deployment of Sitefinity CMS.

C#
using System;
using System.Linq;
using Telerik.Sitefinity.Modules.News;
using Telerik.Sitefinity.Multisite;
using Telerik.Sitefinity.Services;

namespace SitefinityWebApp
{
    public partial class SitefinitySamples
    {
        public void WorkWithMultisiteAPI()
        {
            // Take the multisite context
            var currentContext = SystemManager.CurrentContext;
            var multisiteContext = currentContext.MultisiteContext;
            var currentSite = multisiteContext.CurrentSite;

            // You have several options to get specific site with MultisiteAPI
            // Get by site name
            var siteByName = multisiteContext.GetSiteByName("SecondSite");

            // Get by site domain
            var siteByDomain = multisiteContext.GetSiteByDomain("https://secondsite.com");

            // Get by id
            Guid exampleSiteId = new Guid();
            multisiteContext.GetSites().FirstOrDefault(x => x.Id == exampleSiteId);
            var siteById = multisiteContext.GetSiteById(exampleSiteId);

            // Now you can choose in which siteContext you want to work
            using (new SiteRegion(siteByDomain))

            {
                // Perform action, for example:
                // We edit news item which is present in the site with domain https://secondsite.com
                NewsManager newsManager = NewsManager.GetManager();
                var newsItem = newsManager.GetNewsItems().FirstOrDefault(x => x.Title == "My Title");

                if (newsItem != null)
                {
                    newsItem.Title = "New title";
                }

                newsManager.SaveChanges();
            }
        }
    }
}
Want to learn more?
Enhance your Sitefinity skills by enrolling in free training sessions. Become Sitefinity certified through Progress Education Community to strengthen your professional credentials.
This Article Contains
New to Sitefinity?