gpt4 book ai didi

.net - Sitecore - xslt 渲染 - 当没有可用的发布版本时隐藏

转载 作者:行者123 更新时间:2023-12-04 06:58:07 25 4
gpt4 key购买 nike

现在,当我在 Sitecore 中为由 xslt 渲染渲染的项目设置发布限制时,xslt 只会输出在网站上看起来不太好的空块。

这是我用来呈现我的 Sitecore 项目的 xslt 代码:

      <xsl:for-each select="$item[sc:fld('__created',.)]">
<xsl:for-each select="sc:Split('Agenda-items',$item)">
<xsl:variable name="thisitem" select="sc:Split('Agenda-items',$item)" />
<xsl:variable name="loopitem" select="sc:item(text(),.)" />
<xsl:if test="$item[sc:fld('__created',.)]">

<div class="agendaItem">
<div class="agendaDatum">
<span class="agendaDag">
<sc:date field="Begindatum" format="dd" select="$loopitem" />
</span>
<span class="agendaMaand">
<sc:date field="Begindatum" format="MMM" select="$loopitem" />
</span>
</div>
<div class="agendaTekst">
<sc:link select="$loopitem" title="" class="rood">
<sc:text field="Titel" select="$loopitem" />
</sc:link>
<br />
<span class="agendaUitleg">
<xsl:value-of select="stringutil:Clip(sc:field('Intro',$loopitem), 60, 1)"/>&#160;
</span>
</div>
</div>
</xsl:if>
</xsl:for-each>
</xsl:for-each>

我想要的是检查一个项目是否具有上下文语言中可用的版本,该版本不受限制在当前日期显示。例如:

现在是 2010 年 2 月 12 日,我有一个项目限制在 2010 年 2 月 11 日至 2010 年 2 月 16 日期间发布。现在它不会显示,这正是我想要的。但是,它也不会显示我的跨度和 div,而是只会用空信息填充它们。这会导致网站上出现空块,这有点难看:

Empty :/ http://www.bibliotheekmb.nl/images/emptycellblocks.png

所以这个块的最上面的一项显示了一个项目,而它被限制发布。我怎样才能在 xslt 中处理这个?

Sitecore 演示文稿 xslt 食谱说:
<xsl:for-each select="$sc_currentitem/item[sc:fld('__created',.)]">
<!--the context element is an item with a version in the context language-->
</xsl:for-each>

这是选择具有上下文语言版本的项目,但不适用于我想要的。

最佳答案

请记住,虽然所引用的项目未发布,但对它的引用仍会以 guid 的形式存在于“议程项目”字段中,因此,当您拆分该字段时,您将有四个项目要迭代,但只有三个项目数据库中的项目。

为了确保只列出数据库中存在的项目,如果测试添加以下内容:

<xsl:for-each select="sc:Split('Agenda-items',$item)">
<xsl:if test="sc:item(.,.) !=''">
<xsl:variable name="thisitem" select="sc:Split('Agenda-items',$item)" />
<xsl:variable name="loopitem" select="sc:item(text(),.)" />
<!-- other processing -->
<xsl:if>
</xsl:for-each>

关于.net - Sitecore - xslt 渲染 - 当没有可用的发布版本时隐藏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2296886/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com