Inx*_*x51 2 indexing components loops sitecore placeholder
我有一个组件需要知道当前添加到同一个占位符的组件数量,因为它需要根据占位符中的索引更新html属性的值.
无论如何要获得已经添加到占位符的组件数量,或者获取当前渲染器索引?
通常我会使用一个简单的for循环并设置属性,但因为它的占位符包含的组件不是一个选项.
提前致谢!
试试这个:
var placeholder = "my-placeholder";
var renderingReferences = Sitecore.Context.Item.Visualization.GetRenderings(Sitecore.Context.Device, true);
var renderingsInPlaceholder = renderingReferences.Where(r => r.Placeholder.EndsWith('/' + placeholder, StringComparison.OrdinalIgnoreCase));
var numberOfRenderingsInPlaceholder = renderingsInPlaceholder.Count();
Run Code Online (Sandbox Code Playgroud)
更新:更改搜索从占位符键IndexOf来EndsWith.