Get the segments that a page uses
When a page is personalized, Sitefinity CMS provides a way to retrieve the segments used by the page. For more information on personalizing a page, see Create a personalized version of a page and For developers: Create personalized page.
The following snippet demonstrates how to get the segments for page:
C#
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Telerik.Sitefinity.Modules.Pages;
using Telerik.Sitefinity.Personalization.Impl;
using Telerik.Sitefinity.Personalization.Impl.Model;
namespace Telerik.Sitefinity.Documentation.CodeSnippets.DevGuide.SitefinityEssentials.Personalization
{
public partial class PersonalizationSnippets
{
public IQueryable<Segment> GetUsedSegmentsForPage(Guid personalizationMasterId, PageManager pageManager)
{
var personalizationManager = PersonalizationManager.GetManager();
var segments = personalizationManager.GetUsedSegmentsForPage(personalizationMasterId, pageManager);
return segments;
}
}
}
First you initialize the PersonalizationManager. Then you call the GetUsedSegmentsForPage method by passing personalizationMasterId and pageManager as parameters.
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.
Get started with Integration Hub | Sitefinity Cloud
This free lesson teaches administrators, marketers, and other business professionals how to use Sitefinity Integration Hub to create automated workflows between Sitefinity and other business systems.
Web Security for Sitefinity Administrators
This free lesson teaches administrators the basics about protecting your Sitefinity instance and your sites from external threats. Configure HTTPS, SSL, allow lists for trusted sites, and cookie security, among others.
Foundations of Sitefinity ASP.NET Core Development
The free on-demand video course teaches developers how to use Sitefinity ASP.NET Core and take advantage of its decoupled architecture and modern development model.