对于我使用Sitecore CMS的项目。 HMTL输出。
<div class="carousel-item" item-position="1">
...
</div>
<div class="carousel-item" item-position="2">
...
</div>
<div class="carousel-item" item-position="3">
...
</div>
每个div元素代表占位符轮播中的Sitecore组件。属性项位置是占位符处Sitecore组件的当前位置。请记住,必须先执行Sitecore规则,然后才能在网站上看到组件。
有谁知道如何计算属性项目位置(1,2,3等)?
非常感谢。
的Jordy
答案 0 :(得分:2)
最简单的方法可能是每次执行组件时手动计数,并将计数器值存储在Sitecore.Context.Items
集合中,该集合是为单个请求共享的。像这样:
public static int GetComponentCount()
{
var counter = Sitecore.Context.Items["myCounter"] as int?;
var count = counter.HasValue ? (int)counter : 0;
count = count + 1;
Sitecore.Context.Items["myCounter"] = count;
return count;
}
然后使用此方法获取组件中的当前组件数。