Tuesday, May 17, 2022

Get item renderings

 using Sitecore;

using Sitecore.Data;

using Sitecore.Data.Items;

using Sitecore.Layouts;

using Sitecore.Links;

using Sitecore.Publishing.Pipelines.GetItemReferences;

using Sitecore.Publishing.Pipelines.PublishItem;

using Sitecore.XA.Foundation.SitecoreExtensions.Extensions;

using System;

using System.Collections.Generic;

using System.Linq;


string deviceName = "Default".ToLower();

var deviceItem = item.Database.Resources.Devices.GetAll().Where(d => d.Name.ToLower() == deviceName).First();

if (deviceItem != null)

{

var renderings = item.Visualization.GetRenderings(deviceItem, false);

if (renderings != null)

{

foreach (var renderingref in renderings)

{

if (!string.IsNullOrEmpty(renderingref.RenderingItem.DataSource))

{

Item ds = Sitecore.Context.Database.GetItem(renderingref.RenderingItem.DataSource);


if (ds != null)

{

RecurseChildren(relatedItems, ds);

}

}


}

}


}


No comments:

Post a Comment